如何使用Java 8中的stream将几个字段收集到一个列表中?
2022-09-02 09:47:36
例如,我有带有姓名和姓氏字段的类。Person
我想从 中收集一个(名字和姓氏都在一起),但似乎我不能对一个列表使用两次地图,或者不能在每个列表中使用两次流。List
String
List
Person
我的代码是:
persons.stream()
.map(Person::getName)
.collect(Collectors.toSet())
.stream().map(Person::getSurname)
.collect(Collectors.toList())
但它一直告诉我,非静态方法不能从静态上下文中引用。Person::getSurname
我做错了什么?