java List集合分页

  1. import java.util.ArrayList;  
  2. import java.util.List;  
  3.   
  4. public class Sublist {  
  5.       
  6.     public static  void fenye(List list,int pagesize){  
  7.           
  8.           int totalcount=list.size();    
  9.           int pagecount=0;    
  10.           int m=totalcount%pagesize;    
  11.           if  (m>0){    
  12.            pagecount=totalcount/pagesize+1;    
  13.           }else{    
  14.            pagecount=totalcount/pagesize;    
  15.           }    
  16.              
  17.           for(int i=1;i<=pagecount;i++){         
  18.            if (m==0){    
  19.                List<Integer> subList= list.subList((i-1)*pagesize,pagesize*(i));     
  20.                System.out.println(subList);       
  21.             }else{    
  22.                 if (i==pagecount){    
  23.                       List<Integer> subList= list.subList((i-1)*pagesize,totalcount);     
  24.                       System.out.println(subList);       
  25.                 }else{    
  26.                       List<Integer> subList= list.subList((i-1)*pagesize,pagesize*(i));    
  27.                       System.out.println(subList);       
  28.                 }    
  29.                 
  30.              
  31.             }    
  32.           }    
  33.           
  34.     }  
  35.      public static void main(String[] args) {    
  36.               
  37.           List<Integer> list=new ArrayList<Integer>();         
  38.           for(int i=1;i<52;i++){    
  39.            list.add(i);       
  40.           }    
  41.             
  42.           fenye(list,10);  
  43.       
  44.          }    
  45.   

  1. }  
  2. 运行结果:

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
    [21, 22, 23, 24, 25, 26, 27, 28, 29, 30]
    [31, 32, 33, 34, 35, 36, 37, 38, 39, 40]
    [41, 42, 43, 44, 45, 46, 47, 48, 49, 50]
    [51]



  3. 每页显示

    说明:其中pagesize:每页显示多少个,start是第几页 需要作为参数传递进来,list下标从0开始,sublist方法第一个参数包含,第二个参数不包含

    list 为要分页的list集合,pageSize是每页数据条数,i 是第几页
  4. private static List<CourseAllDTO> fenye(List<CourseAllDTO> list, int pagesize, int i) {
        int totalcount = list.size();
        int pagecount = 0;
        int m = totalcount % pagesize;
        if (m > 0) {
            pagecount = totalcount / pagesize + 1;
        } else {
            pagecount = totalcount / pagesize;
        }
        System.out.println(pagecount + "-------");
        System.out.println(m + "----m---");
        List<CourseAllDTO> subList = new ArrayList<>();
        if (m == 0) {
            subList = list.subList((i - 1) * pagesize, pagesize * (i));
            System.out.println(subList + "m==0------------------");
        } else {
            if (i == pagecount) {
                subList = list.subList((i - 1) * pagesize, totalcount);
                System.out.println(subList);
            } else {
                subList = list.subList((i - 1) * pagesize, pagesize * (i));
                System.out.println(subList);
            }
        }
        return subList;
    }

猜你喜欢

转载自blog.csdn.net/qq_37880968/article/details/79923115