package com.dxcollector.commen;
/**
* 计算分页或线程数
*
* @author 忧里修斯
*
*/
public class CalcuPage {
int total;
int limit;
/**
* @param total 总页数
* @param limit 每页显示的页数
*/
public CalcuPage(int total,int limit){
this.total = total;
this.limit = limit;
}
/**
* 获取总页数
*/
public int getPageSize(){
if(total == 0){
return 0;
}else{
if(total%limit == 0){
return total/limit;
}else{
return total/limit+1;
}
}
}
/**
* 根据当前页获取起始位置
*/
public int getStart(int currentPage){
if(currentPage == 1){
return 0;
}else{
return (currentPage-1)*limit+1;
}
}
/**
* 根据当前页获取结束位置
*/
public int getEnd(int currentPage){
if(currentPage == 1){
return limit;
}else if(currentPage != getPageSize()){
return getStart(currentPage)+limit-1;
}else{
return total;
}
}
public static void main(String[] args) {
CalcuPage c = new CalcuPage(10,3);
System.out.println("总页数:"+c.getPageSize());
System.out.println("起始:"+c.getStart(4));
System.out.println("结束:"+c.getEnd(4));
}
}
分页计算
最新推荐文章于 2025-01-12 22:35:28 发布