我有一个像
这样的课程public class Person {
public Person(String firstName) {...}
public String getFirstname() {...}
// ... some other fields
}
以及这些类的对象列表:
List<Person > objList = new ArrayList<>();
objList.add(new Person("Peter"));
objList.add(new Person("James"));
objList.add(new Person("Bart"));
现在我需要一个以逗号分隔的列表,列出此对象列表的第一个名称,如"Peter,James,Bart"
。
如何使用lambdas和Java 8流做到这一点? TIA!
答案 0 :(得分:9)
这基本上是java.util.stream.Collectors的API文档中的第三个示例:
String result = objList.stream()
.map(Person::getFirstName)
.collect(Collectors.joining(","));