我有一个School
类,其名称为String
字段。
public class School {
private final String name;
public School(String name) {
this.name = name;
}
// getter and setter ...
}
我有ArrayList
个实例中的一个School
:
List<School> shoolList = // Got value of ArrayList<School>
我想得到一个Set<String>
,其中包含List
以上的所有学校名称。我尝试使用流API的map()
:
schooList.stream().map(school -> school.getName())
但是有一种简单的方法可以从以上结果中获得Set<String>
类型的结果吗?
答案 0 :(得分:1)
使用Collectors
:
Set<String> allNames = schoolList.stream()
.map(School::getName)
.collect(Collectors.toSet());
有关更多信息,请参见:https://docs.oracle.com/javase/8/docs/api/java/util/stream/Collectors.html