原文链接:List如何取100条数据 – 编程屋
在开发环境中,如果线上数据太多,都放在了一个list里面,那么对list去进行操作的时候,可能就会边得很缓慢,尤其是当一个list数据达到上万条时,批量的去对数据库进行更新或删除操作,就会造成数据库等一系列问题。
前段时间,由于线上代码批量修改数据过大(也就是list集合里面数据量太大),导致了数据库死锁问题。所以可以将list中的数据进行分段,让它们分批次的来进行。即每100条进行操作一次
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
for (int i = 0; i < 526; i++) {
list.add(i);
}
List<Integer> newList = new ArrayList<>();
int toIndex = 100;
// 装填100条数据
for (int i = 0; i < list.size(); i += 100) {
if (i + 100 > list.size()) {
// 注意下标问题
toIndex = list.size() - i;
}
newList = list.subList(i, i + toIndex);
//自己代码逻辑对分隔后的newList集合进行操作
System.out.println(newList);
}
}
测试结果:
以上只是部分内容,为了维护方便,本文已迁移到新地址:List如何取100条数据 – 编程屋