intPageCount=(intRowCount+PageSize-1)/PageSize;
为什么要+PagSize -1/PageSize;
能不能帮忙解释一下。
*****************************************************
intRowCount+PageSize-1 -- 当前页的最后一条记录在总记录数中的行数
你说的这句还是没懂
二楼的。你说的是我写的另一种做法,是我自己想出来才编的。
问题的关键是上面那个句话。是我在网上找的没有看懂?
intRowCount -- 当前页的第一条记录在总记录数中的行数
PageSize -- 每页显示的记录数
intRowCount+PageSize-1 -- 当前页的最后一条记录在总记录数中的行数
(intRowCount+PageSize-1)/PageSize -- 当前显示的第几页
======================================================
早把代码贴出来不就解决了~~~~
if((countRows%PageSize)==0)
intPageCount=countRows/PageSize;
else
intPageCount=countRows/PageSize+1;
在这里:
countRows:记录总数
PageSize:每页显示记录数
intPageCount:页数
如果countRows取余PageSize为0,说明正好可以被整除
也就好比:一共20条记录,每页显示5条,正好可以显示4页!
如果countRows取余PageSize不为0,说明不能被整除
此时countRows除以PageSize得到的页数要少1!
好比一共18条记录,每页显示5条,不能被整除,
而18/5=3(在JAVA中)按理来说应该显示4页,只不过第四页为3条记录罢了!
所以要将countRows/PageSize的结果+1
PageSize -- 每页显示的记录数
intRowCount+PageSize-1 -- 当前页的最后一条记录在总记录数中的行数
(intRowCount+PageSize-1)/PageSize -- 当前显示的第几页
======================================================
早把代码贴出来不就解决了~~~~
if((countRows%PageSize)==0)
intPageCount=countRows/PageSize;
else
intPageCount=countRows/PageSize+1;
在这里:
countRows:记录总数
PageSize:每页显示记录数
intPageCount:页数
如果countRows取余PageSize为0,说明正好可以被整除
也就好比:一共20条记录,每页显示5条,正好可以显示4页!
如果countRows取余PageSize不为0,说明不能被整除
此时countRows除以PageSize得到的页数要少1!
好比一共18条记录,每页显示5条,不能被整除,
而18/5=3(在JAVA中)按理来说应该显示4页,只不过第四页为3条记录罢了!
所以要将countRows/PageSize的结果+1
温馨提示:答案为网友推荐,仅供参考
第1个回答 2007-09-04
当你的intRowCount<PageSize的时候,就有意义了