List 集合分頁實現
阿新 • • 發佈:2019-01-27
package day01; import java.util.ArrayList; import java.util.List; /** * List分頁測試 * * @author Jandy 2011-6-7 14:50:25 */ public class Page { public static void main(String[] args) throws Exception { List<Object> p = new ArrayList<Object>(); for (int i = 1; i <= 10; i++) { p.add(i); System.out.println(i + "-" + p.get(i - 1)); } List<Object> result = page(3, 15, p); for (int i = 0; i < result.size(); i++) { System.out.println(result.get(i)); } } /** * @param pageNo 當前頁碼 * @param pageSize 頁數 * @param list 所有集合 * @return * @throws Exception */ public static List<Object> page(int pageNo, int pageSize, List<Object> list)throws Exception { List<Object> result = new ArrayList<Object>(); if (list != null && list.size() > 0) { int allCount = list.size(); int pageCount = (allCount + pageSize - 1) / pageSize; if (pageNo >= pageCount) { pageNo = pageCount; } int start = (pageNo - 1) * pageSize; int end = pageNo * pageSize; if (end >= allCount) { end = allCount; } for (int i = start; i < end; i++) { result.add(list.get(i)); } } return (result != null && result.size() > 0) ? result : null; } }