`
498320858
  • 浏览: 393030 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

依据记录总数和每页大小取页数

 
阅读更多

例如:总记录数为totalrow,每页显示数为pagesize,现在要求总页数totalpage

 

1 常用方法:整除,判断余数,余数大于0,整除结果加1。

 

if(totalrow%pagesize==0)

           totalpage=totalrow/pagesize;

else

           totalpage=totalrow/pagesize+1;

 

这种计算方法,会导致程序先取余数,再比较是否有余数,再进行整除操作,然后再进行相加操作

 

 

2 今天无意间发现还有另外一种计算方式(以前没怎么多想)

 

totalpage=(totalrow+(pagesize-1))/pagesize

 

由于余数最小为1,那么先加上最大的余数(pagesize-1)后,只要totalrow/pagesize余数不为0,(totalpage+(pagesize-1))/pagesize的结果一定会比totalrow/pagesize大1;否则结果相等;此计算公式结果和方法1中结果一致,但是写法简单,无需bool判断,而且整除或者取余数操作只进行了一步,相对来讲效率有所提升,效率比较代码

 

long t1=System.currentTimeMillis();
	for(int i=0;i<10000;i++){
		int totalrow=(int)(Math.random()*10000000.00);
		int pagesize=50;
		if(totalrow%pagesize==0){
			System.out.println(totalrow/pagesize);
		}else{
			System.out.println(totalrow/pagesize+1);
		}
	}

	long t2=System.currentTimeMillis();

	for(int i=0;i<10000;i++){
		int totalrow=(int)(Math.random()*10000000.00);
		int pagesize=50;
		System.out.println((totalrow+(pagesize-1))/pagesize);
	}

	long t3=System.currentTimeMillis();
	
	System.out.println("时间间隔:方法一耗时["+(t2-t1)+"]ms\t方法二耗时["+(t3-t2)+"]ms");

 连续执行4次,执行结果:

时间间隔:方法一耗时[277]ms    方法二耗时[223]ms

时间间隔:方法一耗时[281]ms    方法二耗时[256]ms

时间间隔:方法一耗时[335]ms    方法二耗时[248]ms

时间间隔:方法一耗时[281]ms    方法二耗时[215]ms

分享到:
评论

相关推荐

    Bootstrap-table自定义可编辑每页显示记录数.docx

    在 Bootstrap-table 的 HTML 结构中,每页显示记录数的下拉框是一个大 div,其中包含两个小 div,一个用于显示每页记录数,另一个用于显示总页数。我们可以使用 jQuery 来捕获该 div,然后将其移除,并拼接我们的...

    PageHelper.java(csdn)————程序.pdf

    - `pageCount`:表示总页数,根据数据总数和每页大小计算得出。 2. **方法详解**: - `getPageNo()` 和 `setPageNo(int pageNo)`:分别用于获取和设置当前页的页码。 - `getPageSize()` 和 `setPageSize(int ...

    bootstrapTable 自定义可编辑每页显示的记录数

    引用在table.js后面,把原来的下拉选择每页数量变为输入框输入

    总页数算法.txt

    - **除法操作**:之后的除法操作 `/(pageSize)` 实现了对记录总数按每页大小进行划分的过程,从而得到总页数。 ### 示例解释 为了更好地理解这个算法,我们可以通过一个具体的例子来说明。假设 `totalRecord = 25`...

    Ado实例(记录集的导航,包括了定位记录,页,缓存大小和绝对位置)

    `PageSize`设置每页包含的记录数,`AbsolutePage`则表示当前所在的页数。通过调整这两个值,可以在记录集中进行前后翻页。 3. **缓存大小**: - ADO的`CacheSize`属性用于指定从数据库一次性加载到内存中的记录数...

    C# winform分页控件,用于dataGridView分页浏览,分页,跳转,自定义页数,动态设置页大小

    - **动态设置页大小**:允许用户动态设置每页显示的记录数。 - **自定义页数**:用户可以输入希望的总页数,从而间接设置页大小。 ## 安装使用 -**请编译后直接添加引用PageControl**- -**如果工具箱找不到...

    formview分页上一页下一页总页数当前页数首页末页

    在`FormView`控件中,通过`AllowPaging`属性开启分页功能,设置`PageSize`属性以指定每页显示的记录数。例如: ```xml ``` 3. **添加导航控件** 通常我们会用`PagerTemplate`来定义分页导航元素的布局。在`...

    在页脚显示PDF的总页数

    4. **计算总页数**:在每创建一页时,总页数加一。在文档结束时,可以在页脚位置使用这个总页数。 5. **关闭文档**:完成所有页面的添加后,记得调用PdfWriter的`close()`方法来关闭文档。 下面是一个简化的示例...

    分页通过下拉框选择每页显示的个数

    前端接收到后台返回的分页数据后,不仅需要展示当前页的数据,还需要构建分页导航条,包括上一页、下一页、跳转到指定页等链接,同时显示总页数和每页记录数的下拉框。 8. **优化与性能**: 为了提高性能,可以...

    PHP分页类curpage

    1. **初始化**:接收总记录数和每页显示的记录数,计算总页数。 2. **获取当前页**:判断用户请求的页面是否合法,如果不合法则设置为默认值,如第1页。 3. **生成链接**:根据当前页和总页数生成可以跳转的页码链接...

    Tiff文件内页数统计研究及C&C#代码示范

    TIFF(Tagged Image File Format)是一种常用的图像文件格式,尤其在扫描文档和存档领域广泛应用,因为它支持多页和多种图像压缩方式。在处理TIFF文件时,有时我们需要统计其中包含的页面数量,这对于管理和处理多页...

    万能的php分页类实例代码

    1. **计算总页数**:根据数据库中的记录总数和每页显示的记录数来计算总页数。 2. **生成分页链接**:创建一个包含所有页码的链接列表,用户可以点击这些链接跳转到相应的页面。 3. **获取当前页数据**:根据当前...

    前端打印时js分页实现共几页和第几页

    本文将详细介绍如何使用JavaScript(js)在前端实现分页功能,包括显示总页数、当前页数,以及触底自动换页,并在每页表头增加固定部分,如金额大写转换和当前时间获取。 一、分页基础 1. 数据分块:分页的核心是...

    总页数第几页跳转页码

    - **总页数**(Total Pages):根据数据量和每页显示的记录数计算得出的页面总数。 - **总记录数**(Total Records):数据集中总的记录数量。 - **每页记录数**(Records per Page):用户设置或预定义的每页显示的...

    读取pdf页数jar

    每个库都有其特点和适用场景,选择哪一个取决于具体需求,比如性能、易用性、功能支持等。 总的来说,读取PDF页数是PDF处理的一个基础任务,Java开发者可以利用各种库轻松实现。对于给定的"读取pdf页数jar",它很...

    Java读取Word文档页数

    本主题将深入探讨如何利用给定的`itextpdf-5.5.9.jar`和`jacob.jar`这两个库来实现Java读取Word文档页数的功能。 `jacob.jar`是一个Java到COM桥接库,它允许Java应用程序调用Microsoft Office组件,如Word,从而...

    oracle分页查询并返回总记录数据存储过程

    3. **动态生成分页查询语句**:根据当前页码和每页记录数计算出行号范围,并构造分页查询语句。 4. **执行分页查询**:使用动态生成的分页查询语句打开游标返回查询结果。 #### 存储过程代码详解 ```sql CREATE OR...

    VISUAL WEB DEVELOPER 2008例子

    在类`GridView`中,定义了一些变量来存储数据的相关信息,如连接字符串(connString),记录总数(rowCount),总页数(pageCount),每页大小(pageSize)以及当前页号(pageNow)。这些变量是实现分页功能的关键。 在`Page_...

    java调用vbs获取获取excel各sheet页打印总数

    3. **处理返回结果**:`exec()`方法会返回一个`Process`对象,你可以通过这个对象的`getInputStream()`和`getErrorStream()`方法读取VBScript的输出和错误信息,从而获取到每个工作表的打印页数。 4. **整合信息**...

    java分页总结

    2. **计算总页数**:根据总记录数和每页记录数计算出总页数。 3. **确定当前页码**:通过用户请求参数获取,若无则默认为第一页。 4. **构造SQL查询语句**:根据当前页码和每页记录数,构造带有LIMIT和OFFSET的SQL...

Global site tag (gtag.js) - Google Analytics