悠然哈哈哈

导航

Java8实现分页

import cn.hutool.json.JSONUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class Test {
    public static void main(String[] args) {

        List<Detail> DetailList = new ArrayList<>();
        Detail detail = new Detail();
        detail.setId(1l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(2l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(3l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(4l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(5l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(6l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(7l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(8l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(9l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(10l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(11l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(12l);
        DetailList.add(detail);
        detail = new Detail();
        detail.setId(13l);
        DetailList.add(detail);

        int pageSize = 2;// 条数
        int listCount = DetailList.size();
        int totalPage = listCount % pageSize > 0 ? listCount / pageSize + 1 : listCount / pageSize;
        System.out.println("--------totalPage:"+totalPage);

        for (int i = 1; i < totalPage+1; i++) {
            int pageNo = (i - 1) ;
            System.out.println("--------pageNo:"+pageNo);
            List<Detail> modelList = DetailList.stream().skip(pageNo * pageSize).limit(pageSize).collect(Collectors.toList());
            String jsonStr = JSONUtil.toJsonStr(modelList);
            System.out.println("---jsonStr:"+jsonStr);
        }
    }
}
--------totalPage:7
--------pageNo:0
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":1},{"asc":" asc","start":0,"pageSize":30,"id":2}]
--------pageNo:1
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":3},{"asc":" asc","start":0,"pageSize":30,"id":4}]
--------pageNo:2
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":5},{"asc":" asc","start":0,"pageSize":30,"id":6}]
--------pageNo:3
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":7},{"asc":" asc","start":0,"pageSize":30,"id":8}]
--------pageNo:4
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":9},{"asc":" asc","start":0,"pageSize":30,"id":10}]
--------pageNo:5
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":11},{"asc":" asc","start":0,"pageSize":30,"id":12}]
--------pageNo:6
---jsonStr:[{"asc":" asc","start":0,"pageSize":30,"id":13}]

Process finished with exit code 0

 

Lists.partition(updateList, 200).forEach(list -> mapper.updateBatch(list));


Lists.partition(orderCodes, 100).forEach(list -> {
            request.setOrderCodes(list);
            if ("SO".equalsIgnoreCase(type)) {
                outFeign.update(request);
            } else {
                inFeign.update(request);
            }
        });

 

List<String> pmCodeList = new ArrayList<String>();
        pmCodeList.addAll(set);
        // 分页
        int total = pmCodeList.size();
        int pageSize = 900;
        int pages = total / pageSize + 1;
        for (int pageNo=1;pageNo <= pages;pageNo++) {
            List<String> subName;
            if (pageNo==pages){
                subName=pmCodeList.subList((pageNo-1)*pageSize,total);
            } else {
                subName=pmCodeList.subList((pageNo-1)*pageSize,pageNo*pageSize);
            }
        
            if (EmptyUtils.isNotEmpty(subName)) {
               // 处理 list
            }
        }        

  

参考:https://blog.csdn.net/weixin_44476553/article/details/110536713

posted on 2021-11-30 16:20  悠然886  阅读(928)  评论(0编辑  收藏  举报