package com.xiangshuai.util;
import java.util.ArrayList;
import java.util.List;
/**
* @author lqx
*分页工具类
*/
public class PageUtil {
/**
* @methoDesc:功能描述:将原list数据 切分成 (list.size/pageSize)--整除或(list.size/pageSize)+1非整除
* 个 list集合进行返回
* @param list :原list数据
* @param pageSize :切分成的list集合数量,最后一个list集合数量可能会小于这个数
* @return 切分好的list
*/
static public <T> List<List<T>> splictList(List<T> list,int pageSize){
int size = list.size();
//总页数
int totalPage=0;
int temp = size%pageSize;
if(temp==0){
totalPage=size/pageSize;
}else{
totalPage=size/pageSize+1;
}
int endNo=pageSize;
int startNo=0;
List<List<T>> nlist = new ArrayList<List<T>>();
for(int i=0;i<totalPage;i++){
List<T> tempList = new ArrayList<T>();
for(int j=startNo;j<endNo;j++){
tempList.add(list.get(j));
}
startNo+=pageSize;
if(totalPage-2==i){//最后一页的前一页,下一次的结束也为list.size
endNo=list.size();
}else{
endNo+=pageSize;
}
nlist.add(tempList);
}
return nlist;
}
}