提出: 頁面一行顯示10條數據,如果數據庫有20條數據,就顯示2頁,如果數據庫有28數據,就應該顯示3頁。
下面對如何計算進行分析。
解決:
方法一:
if(totalRecord % pageSize == 0){
//如果數據庫總記錄數與頁面顯示條數整好相除(20 / 10 = 2),就是一般情況
totalPage = totalRecord / pageSize;
}else{
//如果數據庫總記錄數與頁面顯示條數有多余條數(28 / 10 = 2.8),無法得到多余
//數據的頁數,此時就加1,得到3.8然后取整
totalPage = totalRecord / pageSize + 1;
}
方法二:
//與方法一不同,簡化代碼的同時,也很巧妙
//(28 + 9) / 10 = 3.7 ,如果 totalRecord / pageSize有余數,
//就加上頁面的最大行數減1,保證余數能夠湊出一頁
totalPage = (totalRecord + pageSize -1) / pageSize; //一行代碼搞定
此文僅個人總結,不到之處望指出。