我正在学习lambda表达式。 从名单上,我想再列出20岁以上的人。
final List<Person> people = Arrays.asList(
new Person("John", 10),
new Person("Greg", 30),
new Person("Sara", 20),
new Person("Jane", 15));
List<Person> olderThan20 =
people.stream()
.filter(person -> person.getAge() > 20)
.collect(ArrayList::new,
ArrayList::add,
ArrayList::addAll);
我的印象是,ArrayList::new
和ArrayList::add
仅前两个参数就足够了。
示例中如何以及何时使用第三个参数ArrayList::addAll
?