java list 分页
/** * * @param list * @param pageNum * @param pageSize * @param <T> * @return 返回当前页数据 */ public <T> List<T> getListPaging(List<T> list, int pageNum, int pageSize) { if(list == null || list.size() <= 0){ return new ArrayList<>(0); } //开始下标 int startIndex = (pageNum - 1) * pageSize; //结束下标 subList()方法不包含结束下标的元素 int endIndex = pageNum * pageSize; //list总条数 int total = list.size(); //总页数 int pageCount = 0; //通过取余决定是否给总页数加1 int num = total % pageSize; if (num == 0) { pageCount = total / pageSize; } else { pageCount = total / pageSize + 1; } //如果当前页是最后一页的话 要包含集合的最后一条数据,因为sublist方法本身结束的下标是不包含当前元素的 if (pageNum == pageCount) { endIndex = total; } return list.subList(startIndex, endIndex); }