How to split array list into equal parts?

前端 未结 9 1289
攒了一身酷
攒了一身酷 2020-11-29 07:20

Is there anyway to split ArrayList into different parts without knowing size of it until runtime? I know there is a method called:

list.subList(a,b);
         


        
9条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-11-29 07:51

    generic function :

    public static  ArrayList chunks(ArrayList bigList,int n){
        ArrayList chunks = new ArrayList();
    
        for (int i = 0; i < bigList.size(); i += n) {
            T[] chunk = (T[])bigList.subList(i, Math.min(bigList.size(), i + n)).toArray();         
            chunks.add(chunk);
        }
    
        return chunks;
    }
    

    enjoy it~ :)

提交回复
热议问题