我有一个有两个成员的类和一个该类的对象列表。现在我想从对象列表中提取成员列表。
例如:
class student {
int Id;
String studentName;
}
现在我需要从学生列表中检索studentName列表。如何使用java8 Streams完成这项工作?
不使用流的解决方案:
List<student> studentList;
List<String> nameList = new ArrayList<String>();
Iterator iterator = studentList.iterator();
while(iterator.hasNext()){
nameList.add(iterator.next().getStudentName());
}
答案 0 :(得分:3)
您需要使用Stream#map
方法,如下所示:
List<Student> students = ...;
List<String> names = students.stream().map(Student::getName).collect(toList());