/**
* 处理接口返回数据, 获取分页后的数据列表
*
* @param list 待分页数据列表
* @param pageNum 页码
* @param pageSize 页面数量
* @return com.github.pagehelper.PageInfo
* @author chengxianwei
* @date 2023/1/12
*/
public static <T> PageInfo startPageList(List<T> list, Integer pageNum, Integer pageSize) {
// 总条数
int total = list.size();
// 页大小
int size = pageNum * pageSize;
// 总页数 总条数 取模 页大小
int pages = total % size == 0 ? total / size : total / size + 1;
// 结束索引 页大小大于总条数时,为总条数, 否则为页大小
int toIndex = size > total ? total : size;
// 开始索引
int fromIndex = (pageNum - 1) * pageSize;
if (fromIndex > toIndex) {
fromIndex = 1;
}
// 截取数据
List<T> dataList = list.subList(fromIndex, toIndex);
// 分页数据
PageInfo<T> pageInfo = new PageInfo<>(list);
pageInfo.setTotal(total);
pageInfo.setPages(pages);
pageInfo.setPageNum(pageNum);
pageInfo.setPageSize(pageSize);
pageInfo.setList(dataList);
return pageInfo;
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。