【发布时间】:2021-08-11 09:47:21
【问题描述】:
如何分组列表中具有相同对象属性的所有对象?不提及对象属性值。
模型类:
public class Item {
private String id;
private String name;
private String team
}
List<item> items = new ArrayList();
我试过这个:
items.stream().filter(item -> "Elites".equals(item.team)).collect(Collectors.toList());
但这需要将团队名称作为参数传递。
我们如何在不指定团队价值的情况下对项目进行分组?
并制作一个 HashMap,其中 Key 作为项。 team 和 value 作为 具有该 team.name 和 item.id 的键值对列表
像这样:
"item.team":{
"item.id":"item.name",
"item.id":"item.name",
"item.id":"item.name",
.....
}
【问题讨论】:
-
如果我们想要
List,那么我不确定这是否可行。将List转换为Map<String, List<Item>>是否可行,其中键是类型(如String),值是所有Item中的List这种类型? -
@Turing85 是的,这就足够了
标签: java arraylist linked-list hashmap java-stream