java8 .stream().filter()

mac2024-05-16  129

1.输出符合表达式的每一个对象

employees.stream().filter(p -> p.getAge() > 21).forEach(System.out::println); //输出每一个对象

2.返回一个符合表达式的集合

Stream<Person> personStream = collection.stream().filter(new Predicate<Person>() { @Override public boolean test(Person person) { return "男".equals(person.getGender());//只保留男性 } }); collection = personStream.collect(Collectors.toList());//将Stream转化为List System.out.println(collection.toString());//查看结果

3.返回符合表达式的集合的第一个对象

employees.stream().filter(p -> p.getAge() > 21).findFirst();

4.抽取对象中所有的id的集合

employees.stream().map(Employee::getId).collect(Collectors.toList());
最新回复(0)