首页 > 解决方案 > 如何根据java中的id将列表分成3个列表

问题描述

我有一些数据存储在列表中。现在我必须根据 id 将此列表分为 3 个列表。

谁能帮我在java中做到这一点?

我有一个类似 [{partyRoleId: 1, partyId:001, name:keer},{prtyRoleId: 1, partyId: 002, name:swathi},{partyRoleId: 1, partyId:003, name:ashok},{partyRoleId :2,partyId:004,名称:nag},{partyRoleId:2,partyId:005,名称:meg},{partyRoleId:3,partyId:006,名称:praveen},{partyRoleId:3,partyId:007,名称:杰伊}],

这是我拥有的列表,现在你能注意到partyRoleId 与某些人群不同吗,我必须列出一组partyRoleId 为1 的人,其中一个列表partyRoleId 为另一个列表中的2,而partyRoleId 为另一个列表中的3 ....基本上我需要一个列表中的 3 个列表

标签: javalist

解决方案


Unisng Java 8 流,这可以通过类似的方式轻松完成

Map<Integer, Integer> result = list.stream()
                                   .collect(Collectors.groupingBy(i -> i % 3, Function.identity()));

wherei % 3必须由您的逻辑替换以提取和分组 id。


推荐阅读