首页 > 代码库 > 分页条中显示数字页码的计算方法
分页条中显示数字页码的计算方法
页码多的时候,当前页始终保持是分页条中显示的最中间那页。
public static void main(String[] args) { calcPage(5, 20, 1); } /** * 计算显示当前分页的起始页 * @param pageNum 当前页码 * @param pageCount 总页数 * @param sideNum 分页系数 分页条中显示几个数字页码。 * 显示数字页码个数 = 2 * sideNum + 1 */ public static void calcPage(int pageNum,int pageCount,int sideNum){ int startNum = 0; int endNum = 0; if(pageCount<=sideNum){ endNum = pageCount; }else{ if(pageNum<=(sideNum+1)){ endNum = 2*sideNum +1; }else{ if((pageNum+sideNum)>pageCount){ endNum = pageCount; }else{ endNum = pageNum + sideNum; } } } if(pageNum<=sideNum){ startNum = 1; }else{ if((pageNum+sideNum)>pageCount){ startNum = pageCount - 2*sideNum; }else{ startNum = pageNum - sideNum; } } loopOut(startNum, endNum, pageNum); } /** * 输出计算出来的当前分页详情 * @param startNum * @param endNum * @param pageNum */ public static void loopOut(int startNum,int endNum,int pageNum){ for (int i = startNum; i <= endNum; i++) { if(i==pageNum){ //输出@符号,代表当前页 System.out.print(i+"@ | "); }else{ System.out.print(i+" | "); } } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。