为了账号安全,请及时绑定邮箱和手机立即绑定

Java将列表的1/3元素复制到新创建的三个列表

Java将列表的1/3元素复制到新创建的三个列表

Smart猫小萌 2021-12-10 10:06:35
假设我有list=[0,1,2,3,4,5](总是可以被三整除,比如 6,9,12,15.. 项目)。我想创建新的三个列表并将此列表的 1/3 复制到每个新创建的列表中。此列表的示例将是: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条经验 获得超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]]

在你到达这个部分之前,你必须检查分区的大小和数量,否则你会得到一个例外。


查看完整回答
反对 回复 2021-12-10
  • 1 回答
  • 0 关注
  • 153 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号