/**
* Split Collection
* @param <T>
* @param reslist the collection to split
* @param count the number of elements per collection
* @return returns the individual collections after splitting
*/
public static <T> list<list<t>> Split (list<t> reslist,int count) {
if (Reslist==null | | COUNT<1)
return null;
List<list<t>> ret=new arraylist<list<t>> ();
int size=reslist.size ();
if (size<=count) {//data volume is insufficient count specified size
Ret.add (reslist);
}else{
int pre=size/count;
int last=size%count;
Previous pre set, each size count element
for (int i=0;i<pre;i++) {
List<t> itemlist=new arraylist<t> ();
for (int j=0;j<count;j++) {
Itemlist.add (Reslist.get (i*count+j));
}
Ret.add (itemList);
}
Last of the processing
if (last>0) {
List<t> itemlist=new arraylist<t> ();
for (int i=0;i<last;i++) {
Itemlist.add (Reslist.get (pre*count+i));
}
Ret.add (itemList);
}
}
return ret;
}
/**
* @param args
*/
public static void Main (string[] args) {
TODO auto-generated Method Stub
List<string> reslist=arrays.aslist ("0", "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", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99");
List<list<string>> Ret=split (reslist,10);
for (int i=0;i<ret.size (); i++) {
System.out.println (Ret.get (i));
}
}
java-large collection split into small collections of specified size