list中有1000条数据,把1000分为20集合,每个分别打印出来,请教简单例子实现功能?

解决方案 »

  1.   

    public static void main(String[] args) {
    int count = 1000;
    int index = 0;
    List<Integer> list = new ArrayList<Integer>();
    for (int i = 0; i < count; i++) {
    list.add(i+1);
    }
    for (int i = 0; i < 20; i++) {
    List<Integer> temp = list.subList(index, index+count/20);
    index += count/20;
    System.out.println("the data of list " + (i + 1) + "===========>");
    for (int j = 0; j < temp.size(); j++) {
    System.out.println(temp.get(j));
    }
    }
    }不知道这个符合楼主的要求不
      

  2.   


    List<Integer> list=new ArrayList<Integer>();
    for(int i=1;i<1001;i++)
    list.add(i);
    int count=list.size()/20;
    for(int i=0;i<20;i++){
    List<Integer> subList= list.subList(i*count,count*(i+1));
    System.out.println(subList);
    }
      

  3.   

    package com.fx.kingpass.test;import java.util.ArrayList;
    import java.util.*;public class CutList {
    public List<Object> cutList(List<Object> list) {
    List<Object> newList =new ArrayList<Object>();
    int size=list.size();
    int count = (int) Math.floor(size/250);     //去小数
    int a = size%255; //取余---以255为分割线,每255个组成一个新的List
    if(a==0){
    //完美分割则直接分段提取
        for(int i=0;i<count;i++){
         List<Object> cut= list.subList(i*255,255*(i+1));
         newList.add(cut);
        }
    }else{
    //不能完美分割,先提取足够250的,不够的再一次提取
    for(int j=0;j<count;j++){
    List<Object> cut= list.subList(j*255,255*(j+1));
        newList.add(cut);
    }
    List<Object> cut1 = list.subList(count*255, count*255+a);
    newList.add(cut1);
    }
    System.out.println(newList);
    return newList;
    }

    //test
    public static void main(String[] args) {
    List<Object> list =new ArrayList<Object>();
    for(int b =0;b<520;b++){
    list.add("第"+(b+1)+"个数字");
    }
    CutList cl = new CutList();
    cl.cutList(list);
    }
    }
      

  4.   

    package com.fx.kingpass.test;import java.util.ArrayList;
    import java.util.*;public class CutList {
    public List<Object> cutList(List<Object> list) {
    List<Object> newList =new ArrayList<Object>();
    int size=list.size();
    int count = (int) Math.floor(size/250);     //去小数
    int a = size%255; //取余---以255为分割线,每255个组成一个新的List
    if(a==0){
    //完美分割则直接分段提取
        for(int i=0;i<count;i++){
         List<Object> cut= list.subList(i*255,255*(i+1));
         newList.add(cut);
        }
    }else{
    //不能完美分割,先提取足够250的,不够的再一次提取
    for(int j=0;j<count;j++){
    List<Object> cut= list.subList(j*255,255*(j+1));
        newList.add(cut);
    }
    List<Object> cut1 = list.subList(count*255, count*255+a);
    newList.add(cut1);
    }
    System.out.println(newList);
    return newList;
    }

    //test
    public static void main(String[] args) {
    List<Object> list =new ArrayList<Object>();
    for(int b =0;b<520;b++){
    list.add("第"+(b+1)+"个数字");
    }
    CutList cl = new CutList();
    cl.cutList(list);
    }
    }