Java开发中List数据量大,需要分片批次处理

在开发过程中可能会遇到需要处理的List数据量过大,可以选择分批处理的方式对大量数据进行处理。

1、使用 apache 的工具包

xml 复制代码
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-collections4</artifactId>
    <version>4.4</version>
</dependency>

代码示例:Lists.partition()

java 复制代码
	 List<Integer> list=new ArrayList<>();
	 for (int i=0;i<500;i++){
	     list.add(i);
	 }
	 List<List<Integer>> newList = Lists.partition(list, 150);
	 for (List<Integer> subset:newList){
	     System.out.println(subset.size());
	 }

2、使用 guava 的工具包

xml 复制代码
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>31.0.1-jre</version>
</dependency>

代码示例:Lists.partition()

java 复制代码
	 List<Integer> list=new ArrayList<>();
	 for (int i=0;i<500;i++){
	     list.add(i);
	 }
	 List<List<Integer>> newList = Lists.partition(list, 150);
	 for (List<Integer> subset:newList){
	     System.out.println(subset.size());
	 }

当然还有其他工具包也封装了List分批处理的函数。


参考链接:

https://blog.csdn.net/qq_35387940/article/details/121612391

相关推荐
Zzj_tju41 分钟前
Java 从入门到精通(六):抽象类与接口到底怎么选?
java·开发语言
美好的事情能不能发生在我身上8 小时前
Hot100中的:贪心专题
java·数据结构·算法
myloveasuka8 小时前
Java与C++多态访问成员变量/方法 对比
java·开发语言·c++
Andya_net9 小时前
Spring | @EventListener事件机制深度解析
java·后端·spring
lang201509289 小时前
18 Byte Buddy 进阶指南:解锁 `@Pipe` 注解,实现灵活的方法转发
java·byte buddy
重庆小透明9 小时前
【java基础篇】详解BigDecimal
java·开发语言
杰克尼10 小时前
苍穹外卖--day08
java·数据库·spring boot·mybatis·notepad++
lierenvip10 小时前
SQL 建表语句详解
java·数据库·sql
kuntli10 小时前
Spring Bean生命周期全解析
java
ok_hahaha10 小时前
java从头开始-苍穹外卖-day06-微信小程序开发-微信登录和商品浏览
java·微信·微信小程序·小程序