假設我有l(wèi)ist=[0,1,2,3,4,5](總是可以被三整除,比如 6,9,12,15.. 項目)。我想創(chuàng)建新的三個列表并將此列表的 1/3 復制到每個新創(chuàng)建的列表中。此列表的示例將是:newlist1=[0,1]newlist2=[2,3]newlist3=[4,5]我的實際代碼:int equalPart=numberOfVms/3; // 3rd part of VM's is going in each node type //putting vms for each list . number of vms = number of items in listfor vm System.out.println("equal parts =" +equalPart); for(int div=0 ; div<numberOfVms; div++) { = listForVm.get(div); } 希望問題是清楚的。
1 回答

回首憶惘然
TA貢獻1847條經(jīng)驗 獲得超11個贊
如果您使用的是 Java 8,則可以使用:
int size = list.size() / 3;
List<List<Integer>> result = IntStream.range(0, 3)
.mapToObj(l -> list.subList(l * size, (l + 1) * size))
.collect(Collectors.toList());
輸出
[[0, 1], [2, 3], [4, 5]]
在你到達這個部分之前,你必須檢查分區(qū)的大小和數(shù)量,否則你會得到一個例外。
添加回答
舉報
0/150
提交
取消