Java 内存分页

  1. 查询出要分页的总数

  2. 根据 stream 流进行分页

  3. 当分页数超过总数,返回空集合。例:总数10,页码2,pagesize10

  4. 当最后一页不够 pageSize, limit(pageSize) 返回实际条数

例:12条数据,pageSize10, 最后一页虽然 limit10 ,但扔返回预期数值2

java 复制代码
   public static <T> List<T> pagination(List<T> records, int pageNum, int pageSize) {
        if (CollectionUtils.isEmpty(records)) {
            return Collections.emptyList();
        }
         return records.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());   
    }
相关推荐
语戚16 分钟前
力扣 968. 监控二叉树 —— 贪心 & 树形 DP 双解法递归 + 非递归全解(Java 实现)
java·算法·leetcode·贪心算法·动态规划·力扣·
quxuexi38 分钟前
网络通信安全与可靠传输:从加密到认证,从状态码到可靠传输
java·安全·web
hrhcode1 小时前
【java工程师快速上手go】二.Go进阶特性
java·golang·go
wjs20241 小时前
JavaScript 语句
开发语言
cmpxr_2 小时前
【C】局部变量和全局变量及同名情况
c语言·开发语言
小碗羊肉3 小时前
【从零开始学Java | 第三十一篇下】Stream流
java·开发语言
❀͜͡傀儡师3 小时前
Spring AI Alibaba vs. AgentScope:两个阿里AI框架,如何选择?
java·人工智能·spring
aq55356004 小时前
Laravel10.x重磅升级,新特性一览
android·java·开发语言
一 乐4 小时前
酒店预订|基于springboot + vue酒店预订系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·酒店预订系统
报错小能手4 小时前
ios开发方向——swift错误处理:do/try/catch、Result、throws
开发语言·学习·ios·swift