java中list集合分批处理
时间: 2024-09-19 18:08:56 浏览: 45
在 Java 中,List 集合分批处理通常是为了优化性能,特别是当需要一次性处理大量数据但内存有限的情况下。批量处理允许你按批次而非一次性加载所有数据,避免一次性加载过大导致内存溢出。
以下是一个简单的示例,展示如何使用 Iterator 或者批量大小(如 100 条记录)循环遍历 List:
```java
import java.util.ArrayList;
import java.util.Iterator;
public class BatchProcessing {
public static void processList(List<String> dataList, int batchSize) {
Iterator<String> iterator = dataList.iterator();
while (iterator.hasNext()) {
// 每次处理一批数据
List<String> batch = new ArrayList<>();
for (int i = 0; i < batchSize && iterator.hasNext(); i++) {
batch.add(iterator.next());
// 这里可以对每批数据进行处理操作,比如数据库插入、计算等
}
// 批量处理完成后的操作
processBatch(batch);
}
}
private static void processBatch(List<String> batch) {
// ... 执行具体的批量操作,例如打印、存储或网络请求等
}
// 调用示例
public static void main(String[] args) {
List<String> data = ...; // 初始化数据列表
processList(data, 100); // 设置批量大小为 100
}
}
```
阅读全文