1、分頁原理
分頁必須兩參數:頁碼即當前頁為第幾頁(pageNo)、每頁顯示的記錄數(pageSize)
開始和結束位置:通過分頁參數計算開始位置和結束位置,從而從列表中獲取分頁的數據。
開始和結束公式:Integer start = pageSize * (pageNo - 1); Integer end = pageSize * pageNo
2、List分頁截取
/** * @Description List分頁,獲取每頁數據 * @param * @return */ public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("1");list.add("2");list.add("3"); list.add("4");list.add("5"); //每頁顯示多小數據 Integer pageSize = 2; //總頁數 Integer totalPage = list.size() / pageSize; //余數計算 Integer mod = list.size() % pageSize; //如果有余數總頁數+1 if(mod > 0 ){ totalPage = totalPage + 1; } //迭代取出每頁內容 for(int pageNo = 0;pageNo<totalPage;pageNo++){ Integer start = pageSize * pageNo; Integer end = pageSize * (pageNo + 1); //避免超出列表最大界 if(end > list.size()){ end = list.size(); } System.out.println("start:"+start+",end:"+end); List<String> subList = list.subList(start,end); System.out.println(StringUtils.join(subList,",")); } }