1、分页代码--列表(List)类型为例子:
List<String> filterList=new ArrayList();
filterList.add("1");
filterList.add("2");
filterList.add("3");
filterList.add("4");
JSONObject dataJson=new JSONObject();
if(filterList.size()>0)
{
int MaxSize=filterList.size();//最大条数
int startRow=1;//开始索引
int endRow=1;//结束索引
int pages=1;//总页数
pageNum=pageNum<=1?1:pageNum;
pageSize=pageSize<=1?1:pageSize;
if(MaxSize<=pageSize)
{
pages=1;
}
else
{
if(MaxSize%pageSize>0)
{
pages = MaxSize/pageSize+1;
}else{
pages = MaxSize/pageSize;
}
}
System.out.println("总页数>>>"+pages);
List<SceneAllNenames> returnData=new ArrayList<>();
if (pageSize>=MaxSize && pageNum==1)//页码太大了,默认第一页就是全部返回
{
startRow=0;
endRow=MaxSize;
returnData=filterList.subList(startRow,endRow);
}
else
{
startRow=(pageNum-1)*pageSize;//开始页
endRow=(pageNum-1)*pageSize+pageSize;
if(endRow>MaxSize && pageNum<=pages)//最后那一页
{
endRow=MaxSize;
returnData=filterList.subList(startRow,endRow);
}
else if (endRow<MaxSize)
{
returnData=filterList.subList(startRow,endRow);
}
else
{
System.out.println("页码超大"+pageNum);
}
//其他条件就是页码超大,
}
dataJson.put("pageNum", pageNum);//当前页
dataJson.put("pageSize", returnData.size());//每页条数
dataJson.put("total", filterList.size());//总条数
dataJson.put("list", returnData);//页数内容
}