1、工具类
| package com.cc.testproject.utils; |
| |
| import com.github.pagehelper.PageInfo; |
| import org.springframework.stereotype.Component; |
| |
| import java.util.List; |
| import java.util.stream.Collectors; |
| |
| |
| |
| |
| |
| @Component |
| public class StreamUtils<T> { |
| |
| |
| |
| |
| |
| |
| |
| public List<T> pageSkipLimit(List<T> t, Integer page, Integer pageTotal) { |
| return t.stream() |
| .skip((long) (page - 1) * pageTotal) |
| .limit(pageTotal) |
| .collect(Collectors.toList()); |
| } |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| public PageInfo<T> getPageInfo(List<T> finalVos, Integer page, Integer pageTotal) { |
| PageInfo<T> of = new PageInfo<>(); |
| of.setTotal(finalVos.size()); |
| |
| List<T> pageVos = this.pageSkipLimit(finalVos, page, pageTotal); |
| of.setList(pageVos); |
| return of; |
| } |
| |
| |
| } |
2、使用
| @Resource |
| private StreamUtils<User> streamUtils; |
| |
| @Test |
| public void test0001()throws Exception{ |
| User user1 = new User(); |
| user1.setName("第一个"); |
| User user2 = new User(); |
| user2.setName("第二个"); |
| User user3 = new User(); |
| user3.setName("第三个"); |
| |
| List<User> vos = Arrays.asList(user1,user2,user3); |
| |
| List<User> users = streamUtils.pageSkipLimit(vos, 2, 1); |
| System.out.println("分页后的数据:" + users); |
| } |


【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)