• Java LIST做批量分组切割


    对Java LIST做批量分组切割,方便数据进行多线程处理或者其他处理

    方法1:

    //按每500个一组分割
    public static void main(String[] args) {
        int MAX_SEND = 500;
        List<Integer> list = new ArrayList<>();
        for(int i=0;i<1000;i++){
            list.add(i);
        }
        int limit = (list.size() + MAX_SEND - 1) / MAX_SEND;
        List<List<Integer>> mglist = new ArrayList<>();
        Stream.iterate(0, n -> n + 1).limit(limit).forEach(i -> {
            mglist.add(list.stream().skip(i * MAX_SEND).limit(MAX_SEND).collect(Collectors.toList()));
        });
        List<List<Integer>> splitList = Stream.iterate(0, n -> n + 1).limit(limit).parallel().map(a -> list.stream().skip(a * MAX_SEND).limit(MAX_SEND).parallel().collect(Collectors.toList())).collect(Collectors.toList());
        for(List<Integer> list1:splitList){
            System.out.println("---------------------------------------------");
            System.out.println(JSON.toJSONString(list1));
        }
    }
    

     

    方法2 :直接使用公共方法操作

            List<List<Map<String,Object>>> lists = ListUtils.partition(editList,1000);
            for(List<Map<String,Object>> sublist: lists){
                //todo sublist
            }
    

    方法3:

  • 相关阅读:
    css 深入理解
    2018 web经典面试题
    CSS 居中布局
    HTTP首部解析
    http状态码有那些?分别代表是什么意思?
    基本HTTP协议流程是什么?
    JS-变量
    javascript基础1
    css3弹性盒模型(Flexbox)
    文字效果和颜色
  • 原文地址:https://www.cnblogs.com/lewisat/p/14523325.html
Copyright © 2020-2023  润新知