java 内存分页

这段代码主要实现了分页逻辑,根据请求的当前页数(curPage)、每页大小(pageSize)从原始数据(page)中截取对应部分,并计算总页数(pages)。同时,如果请求的类型为2,还会对数据进行去重处理并统计唯一值的数量(totalNumsType)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

int curPage;
int pageSize;
int totalNums;
int pages;
PageBean pageBean = new PageBean<>();
if (!CollectionUtils.isEmpty(page)) {
totalNums = page.size();
curPage = req.getCurPage();
pageSize = req.getPageSize();
page = page.subList(
pageSize * (curPage - 1) > totalNums ? totalNums : pageSize * (curPage - 1),
((curPage * pageSize) > totalNums ? totalNums : (curPage * pageSize)));
pages = (int) ((totalNums % pageSize) == 0 ? (totalNums / pageSize)
: (totalNums / pageSize + 1));
pageBean.setCurPage(curPage);
pageBean.setPageSize(pageSize);
pageBean.setPages(pages);
if(req.getType() == 2){
List nameList = page.stream().map(GetCollectRecordsListResp::getRecommendMobile).collect(Collectors.toList());
List count = nameList.stream().distinct().collect(Collectors.toList());
pageBean.setTotalNumsType(count.size());
}
pageBean.setTotalNums(totalNums);
pageBean.setList(page);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值