List内存分页工具类
public class ListPageUtil {
/**
* page开始分页
* @param list
* @param pageNum 页码
* @param pageSize 每页多少条数据
* @return
*/
public static List PageResult(List list, Integer pageNo, Integer pageSize) {
if (list == null) {
return null;
}
if (list.size() == 0) {
return null;
}
Integer count = list.size(); // 记录总数
Integer pageCount = 0; // 页数
if (count % pageSize == 0) {
pageCount = count / pageSize;
} else {
pageCount = count / pageSize + 1;
}
int fromIndex = 0; // 开始索引
int toIndex = 0; // 结束索引
if(count < pageSize) pageNo = 1;
if(pageCount < pageNo) pageNo = pageCount;
if (pageNo != pageCount) {
fromIndex = (pageNo - 1) * pageSize;
toIndex = fromIndex + pageSize;
} else {
fromIndex = (pageNo - 1) * pageSize;
toIndex = count;
}
List pageList = list.subList(fromIndex, toIndex);
return pageList;
}
}