java 语言实现程序手动分页
首先我们需要准备的是page类
第一步:page类
//此处应用lombok注解,没有注解get/set方法一样使用
@Data
@EqualsAndHashCode
@ToString
public class Page<T> {
private Integer currentPage;//当前页
private Integer pageSize;//每页显示记录条数
// private Integer totalPage;//总页数
private List<T> pageDatas;//每页显示的数据
private Integer star;//开始数据
private Integer totals;//list总数
}
第二步:传入参数
private Page getPage(Param param, List<User> allList) {
Page page = new Page();
if (param.getCurrentPage() == null){
page.setCurrentPage(param.getCurrentPage());
} else {
page.setCurrentPage(param.getCurrentPage());
}
//设置每页数据为十条
page.setPageSize(param.getPageSize());
//每页的开始数
page.setStar((param.getCurrentPage() - 1) * param.getPageSize());
//list的大小
int count = allList.size();
//设置总页数
// page.setTotalPage(count % 10 == 0 ? count / 10 : count / 10 + 1);
page.setTotals(allList.size());
//对list进行截取
page.setPageDatas(allList.subList(page.getStar(),count-page.getStar()>page.getPageSize()?page.getStar()+page.getPageSize():count));
return page;
}