求教java分页
public class SplitPager {
private final int PAGESIZE=4;//页面的大小
private int currentPage=1;//首页
private Object[][]pageList;//要分布的记录
//设置分页的集合
public void setPageList(Object[][] pageList) {
this.pageList = pageList;
}
//根据用户的操作改变当前页的记录
//how 表示 上一页 、下一页…
public void setCurrentPage(int how) {
switch (how) {
case 1://表示首页
this.currentPage=1;
break;
case 2://表示上页
//如果不是第一页,则减少一页
if(this.currentPage>1){
this.currentPage--;
}
break;
case 3://表示下一页
if(this.currentPage<this.getPageCount()){
this.currentPage++;
}
break;
case 4://表首页
this.currentPage=this.getPageCount();
break;
}
}
//得要显示的数据的信息集合
public List<Object[]> getCurrentPageList(){
int start=(this.currentPage-1)*this.PAGESIZE;
int end=start+this.PAGESIZE;
if(end>this.pageList.length){
end=this.pageList.length;
}
//构建一个List的列表
List<Object[]> saveList=new ArrayList<Object[]>();
for (int i = 0; i < end; i++) {
saveList.add(this.pageList[i]);
}
return saveList;
}
private int getPageCount() {
int size=this.pageList.length;
return size%this.PAGESIZE==0?size/this.PAGESIZE:this.PAGESIZE+1;
}
//得到当前页数
public int getCurrentPage() {
return currentPage;
}
public Object[][] getPageList() {
return pageList;
}
}