内存分页
/**
* @Description 将指定的list集合转换为指定的分页数据
* @Author wlh
* @param list
* @return
*/
public static <T> IPage<T> getPageList(IPage<T> pageInfo, List<T> list){
// IPage<T> pageInfo = new Page<>(page.getPages(), page.getSize());
int currPage = (int)pageInfo.getCurrent() == 0 ? 1 : (int)pageInfo.getCurrent();
int pageSize = (int)pageInfo.getSize();
// 从第几条数据开始
int firstIndex = (currPage - 1) * pageSize;
// 到第几条数据结束
int lastIndex = Math.min(list.size(), currPage * pageSize);
if(CollectionUtils.isEmpty(list)){
pageInfo.setTotal(0);
pageInfo.setRecords(Collections.emptyList());
}else{
List<T> recordists = list.subList(firstIndex, lastIndex);
pageInfo.setTotal(list.size());
pageInfo.setRecords(recordists);
}
return pageInfo;
}