分页计算总页数算法

方法1:

分页计算总页数算法 ,推荐一种 Java的写法 :

int totalPageNum = (totalRecord  +  pageSize  - 1) / pageSize;



方法2:

使用Math.ceil()函数,返回大于或者等于指定表达式的最小整数头文件

如果是JS的话,直接这样用就行

var totalPages = Math.ceil(opts.totalCounts / opts.pageSize);

如果是Java的话,还要强转一下:

int b = (int)Math.ceil(totalCounts/pageSize);
int a = (int)Math.ceil(1.002);




  • 8
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,以下是一个简单的分页算法的实现,假设记录数为 totalRecords,每页显示的记录数为 pageSize。 ``` // 计算页数 int totalPages = (totalRecords + pageSize - 1) / pageSize; // 获取当前页码数 int currentPage = 1; // 假设当前页码数为1 // 计算当前页要显示的记录范围 int startIndex = (currentPage - 1) * pageSize; // 起始记录的下标 int endIndex = startIndex + pageSize - 1; // 结束记录的下标 // 在数据库中查询当前页要显示的记录 List<Record> records = queryRecords(startIndex, endIndex); // 在页面中显示分页信息和翻页链接 String pagination = generatePagination(totalPages, currentPage); ``` 在这个算法中,我们首先根据记录数和每页显示的记录数计算页数。然后,我们假设当前页码数为1,计算出当前页要显示的记录范围,即起始记录的下标和结束记录的下标。接着,我们在数据库中查询当前页要显示的记录,并将其存储在一个 List 中。最后,我们调用一个名为 generatePagination 的方法生成分页信息和翻页链接,并将其存储在一个字符串变量中。 generatePagination 方法的实现可能会因具体需求而有所不同,但通常它会根据页数和当前页码数生成翻页链接,以便用户可以方便地浏览不同的页面。例如: ``` private String generatePagination(int totalPages, int currentPage) { StringBuilder sb = new StringBuilder(); sb.append("<ul>"); // 首页链接 sb.append("<li><a href=\"?page=1\">首页</a></li>"); // 上一页链接 if (currentPage > 1) { sb.append("<li><a href=\"?page=").append(currentPage - 1).append("\">上一页</a></li>"); } // 中间页码链接 for (int i = 1; i <= totalPages; i++) { if (i == currentPage) { sb.append("<li class=\"active\">").append(i).append("</li>"); } else { sb.append("<li><a href=\"?page=").append(i).append("\">").append(i).append("</a></li>"); } } // 下一页链接 if (currentPage < totalPages) { sb.append("<li><a href=\"?page=").append(currentPage + 1).append("\">下一页</a></li>"); } // 尾页链接 sb.append("<li><a href=\"?page=").append(totalPages).append("\">尾页</a></li>"); sb.append("</ul>"); return sb.toString(); } ``` 该方法会生成一个包含首页、上一页、中间页码、下一页和尾页链接的 HTML 代码,并返回该代码的字符串表示形式。在中间页码部分,我们使用一个 for 循环生成每个页码的链接,如果当前页码等于循环变量 i,则为其添加一个 active 类,以便用户可以轻松找到当前所在的页面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值