【发布时间】:2018-03-16 17:51:58
【问题描述】:
我有一个Model 和一个Property 具有以下签名的类:
public class Property {
public String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class Model {
private List<Property> properties = new ArrayList<>();
public List<Property> getProperties() {
return properties;
}
}
我想要来自List<Model> 的Map<String, Set<Model>>,其中键是来自Property 类的名称。如何使用 java8 流按其 Properyes 的名称对该列表进行分组?所有Propertyes 的名称都是唯一的。
可以在单个流中解决,还是应该以某种方式拆分它还是采用经典解决方案?
【问题讨论】:
-
@Holger 这几乎无关紧要,列表也可以。我只是放了一个 Set 以确保我不会有相同的
Model两次,因为两个模型可以在该列表中具有相同的属性。我认为这不是问题吗? -
@Holger 我认为他的意思是“每个模型都是唯一的”,但可以有多个模型具有相同的属性。
-
@Holger 正如托比亚斯所说,抱歉不准确。
-
没关系。你可以edit你的问题来改进它。
标签: java java-8 java-stream