把一个list中的数据重新装到若干个list中比如把一个list中美7个数据装到若干个小list中

解决方案 »

  1.   

     List<E> subList(int fromIndex, int toIndex) 
              返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图。
      

  2.   

    lz具体需求不明确,我的理解做法是另建几个list,然后遍历原来的list,把不同的数据放到不同的list中去?
      

  3.   

    例如 list中有100个对象
    现在要把100个对象装到另外10个list中
      

  4.   

    for example
    List<List<SomeType>> result = new ArrayList<List<SomeType>>();
    List<SomeType> tmp = new ArrayList<SomeType>();
    for (int i=0; i<list.size(); i++) {
        tmp.add(list.get(i));
        if ((i+1)%7 == 0) {
            result.add(tmp);
            tmp = new ArrayList<SomeType>();
        }
    }
    if (tmp.size() > 0) {
        result.add(tmp);
    }
      

  5.   

    边遍历边边装,装好就remove?
      

  6.   

    List<E> subList(int fromIndex,int toIndex)应该可以,不知道是不是类似这样的.import java.util.Arrays;
    import java.util.List;
    import java.util.ArrayList;
    public class ListDemo
    {
    public static void main(String[] args)
    {
    StringBuilder[] str={new StringBuilder("a"),new StringBuilder("b"),new StringBuilder("c"),new StringBuilder("d"),new StringBuilder("e"),new StringBuilder("f"),
    new StringBuilder("g"),new StringBuilder("h"),new StringBuilder("i"),new StringBuilder("j"),new StringBuilder("k"),new StringBuilder("l"),new StringBuilder("m")
    ,new StringBuilder("n"),new StringBuilder("o"),new StringBuilder("p"),new StringBuilder("q")};
    List<StringBuilder> ls=new ArrayList<StringBuilder>(Arrays.asList(str));
    List<StringBuilder> subList=ls.subList(0,6);
    for(StringBuilder aSb:subList)
    {
    System.out.println(aSb);
    }

    }
    }