java分批次处理数据

388 阅读1分钟

List List = new ArrayList();

    for (int i = 0; i < 100; i++) { //假如如有一百单数据
        List.add("第" + (i+1) + "单");
    }

    int count = 20; //定义分批大小。即一批次20条
    List<String> newList = new ArrayList<String>(); //定义新的list 用于接收每次的值

    for (int i = 0; i < List.size(); i++) { //分批次处理
        newList.add(List.get(i));

        if ((count == newList.size()) || (i == (List.size() - 1))) {
            //如果list的size=30 或者 刚好是全部数量(说明list数据循环完毕),因为上边从0开始,所以size-1,不然数组越界
            for (int j = 0; j < newList.size(); j++) {
                System.out.print(newList.get(j) + "   ");
            }

            System.out.println("批次处理");
            newList.clear();
        }
    }

运行结果