java对list<Object>进行手动分页实现
作者:枯枫叶 时间:2023-01-13 13:41:01
该方法使用的jdk1.6以后自带的分页工具类实现
public static void main(String[] args) {
ArrayList list = new ArrayList<>();
list.add("Luo");
list.add("Tian");
list.add("yan");
list.add("23");
list.add("elegant");
list.add("optimistic");
list.add("mysterious");
System.out.println("分页前数据:"+list);
//分页之后
PageInfo pageInfo = getPageInfo(2, 2, list);
System.out.println("总大小:"+pageInfo.getTotal());
System.out.println("当前页:"+pageInfo.getPageNum());
System.out.println("当前页大小:"+pageInfo.getPageSize());
System.out.println("当前页数据:"+pageInfo.getList());
}
public static <T> PageInfo<T> getPageInfo(int currentPage, int pageSize, List<T> list) {
int total = list.size();
if (total > pageSize) {
int toIndex = pageSize * currentPage;
if (toIndex > total) {
toIndex = total;
}
int totalPage = total % pageSize == 0 ? (total/pageSize) : (total/pageSize)+1;
if (totalPage < currentPage){
list = new ArrayList<>();
}else {
list = list.subList(pageSize * (currentPage - 1), toIndex);
}
}
Page<T> page = new Page<>(currentPage, pageSize);
page.addAll(list);
page.setPages((total + pageSize - 1) / pageSize);
page.setTotal(total);
return new PageInfo<>(page);
}
效果
来源:https://blog.csdn.net/gelinwangzi_juge/article/details/123129689
标签:java,list<Object>,分页
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java中字符串String的+和+=及循环操作String原理详解
2023-05-13 15:10:35
常见JavaWeb安全问题和解决方案
2023-11-09 01:02:17
Android 使用Picasso加载网络图片等比例缩放的实现方法
2023-08-29 15:36:32
Android编程之控件ListView使用方法
2022-08-12 08:50:03
![](https://img.aspxhome.com/file/2023/5/113275_0s.png)
列举java语言中反射的常用方法及实例代码
2022-10-31 13:45:07
Hibernate用ThreadLocal模式(线程局部变量模式)管理Session
2021-10-01 18:50:10
SpringCloud使用Zookeeper作为配置中心的示例
2023-08-03 12:30:51
![](https://img.aspxhome.com/file/2023/6/132176_0s.jpg)
SpringMVC+EasyUI实现页面左侧导航菜单功能
2022-09-30 17:11:01
![](https://img.aspxhome.com/file/2023/6/84766_0s.png)
Java JDK与cglib动态代理有什么区别
2023-07-23 08:10:15
C#使用OpenCv图像批处理并改变图片大小并且重命名
2023-12-20 11:10:29
![](https://img.aspxhome.com/file/2023/8/102148_0s.png)
java如何实现字符串中的字母排序
2021-09-17 14:55:11
![](https://img.aspxhome.com/file/2023/3/94763_0s.jpg)
SpringBoot实现本地文件存储及预览过程
2022-07-31 05:30:58
![](https://img.aspxhome.com/file/2023/6/101996_0s.jpg)
Android nativePollOnce函数解析
2022-05-29 01:51:26
Android倒计时控件 Splash界面5秒自动跳转
2023-09-24 18:41:16
![](https://img.aspxhome.com/file/2023/2/123352_0s.gif)
C#中字符串编码处理
2023-10-03 09:56:12
![](https://img.aspxhome.com/file/2023/2/77232_0s.jpg)
java简单坦克大战制作代码
2023-02-07 05:08:37
c# wpf使用GMap.NET类库,实现地图轨迹回放
2023-04-20 06:46:27
![](https://img.aspxhome.com/file/2023/8/88418_0s.gif)
Java求解两个非负整数最大公约数算法【循环法与递归法】
2021-10-15 13:53:48
![](https://img.aspxhome.com/file/2023/1/129601_0s.png)
Android Spinner和GridView组件的使用示例
2022-07-01 15:03:40
![](https://img.aspxhome.com/file/2023/3/138053_0s.png)
java 输入一个数字组成的数组(输出该数组的最大值和最小值)
2023-11-24 21:41:58