一个小的分页计算器

来源:互联网 发布:java监听数据库表变化 编辑:程序博客网 时间:2024/05/16 07:22

在页面上,当数据量过大的时候,经常会采用到分页的方式来展示数据,自然而然的就会有一个分页条,则比如CSDN采用则是

 

第一页 上一页 下一页 最后一页 下拉框

 

而很多时候,数据量过大到下拉框都不十分友好的形式,我们会采用另外一种方式。

 

假如当前选择的是第三页:

 

第一页 上一页 3 4 5 6 7 下一页 最后一页

 

以当前页面为起点,向后显示固定数目的页数(没有超过最后一页的前提)

 

另外更友好的方式是不仅给用户显示后面的页数,更方便的也显示前面的页数,是的用户的当前页在显示页面序列号的中间

 

第一页 上一页 1 2 3 4 5 下一页 最后一页

 

这个时候,如果用户选择的是前几页的话,则需要考虑是否越界并且将页数相应的往后延伸,比如当前是第二页,显示页面数目是5

 

第一页 上一页 1 2 3 4 5 下一页 最后一页

 

另外如果第五页超过了最多的页数,则这个时候就要掐断啦。

 

虽然是一个小小的分页器,但是判断的情况也有好几种

 

1)正常情况下,显示制定数目的页数,将当前页数放在中间。

2)判断前面是否越界,则向后延伸,保证显示数量

3)判断后面是否越界

4)判断前后是否越界

 

 

 

下面是随手写了一个小小的分页计算器,以备下次做页面的时候可以用到

 

原理很简单,就是将从1-pageCount的数据当作一个有刻度队列,用固定长度的数据段当作标尺去移动,直到触发结束条件即可,可以少写几个if-else判断,真正合并了代码后实现只需要差不多4行就够了