import io.swagger.annotations.Api;
import java.util.LinkedList;
import java.util.List;
/**
-
@Author: tmac
-
@Date: Created in 9:19 2019/9/29
/
@Api(“将list进行分页”)
public class ListToPageUtil {
/*- 将list分页
- @param pageNum
- @param pageSize
- @param list
- @return
*/
public static List listToPage(int pageNum, int pageSize, List list){
int limit = (pageNum-1)*pageSize;
int size = list.size();
int totalPage = getTotalPage(pageSize,size);
if(pageNum > totalPage){
System.out.println(“页数超出了”);
throw new RuntimeException(“页数超出了”);
}
List subList = null;
if(pageNum == totalPage){
System.out.println(“最后一页”);
subList = list.subList(limit, size);
}else{
int end= limit + pageSize;
System.out.println("截取的最后的下标 = " + end);
subList = list.subList(limit, end);
}
return subList;
}
/**
- 根据总条数获取总页数
- @param pageSize
- @param totalSize
- @return
*/
public static int getTotalPage(int pageSize,int totalSize){
int totalPage = 0;
if(totalSize % pageSize == 0){
totalPage = totalSize / pageSize;
}else{
totalPage = totalSize / pageSize+1;
}
return totalPage;
}
public static void main(String[] args) {
List list = new LinkedList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);int pageNum = 2; int pageSize = 2; int totalPage = getTotalPage(pageNum, list.size()); System.out.println("总页数:" + totalPage); List page = listToPage(pageNum, pageSize, list); System.out.println("page = " + page);
}
}
————————————————
版权声明:本文为CSDN博主「Zhang_Tmac」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42545382/article/details/102474953