lambda表达式,stream、filter、collect、set、limit、findFirst、Map、mapToInt、Distinct、sort、sorted、assertEquals 要使用lambda表达式,必须装1.8以上的Java版本(包括1.8) 一stream(流) 1 通过filter过滤掉不满足条件的属性值(普通类型) 显示list集合中不是bb的所有值 publicclassFirstClass { @Testpublicvoidtest() ...
Integer findFirst = list.stream().findFirst().get(); //1 Integer findAny = list.stream().findAny().get(); //1 long count = list.stream().count(); //5 Integer max = list.stream().max(Integer::compareTo).get(); //5 Integer min = list.stream().min(Integer::compareTo).get()...
为了实现这一点,我们首先从 List 中获取 Stream,然后调用 number > 7 的 filter() 方法,然后调用 findFirst() 方法。这会给我们结果。 如果您还记得,filter() 是一个中间方法,这意味着在应用过滤器之后,您仍然可以在流上调用其他方法。它也是惰性的,这意味着在您调用诸如 findFirst() 之类的终端方法之前它不...
Double averageAge = list.stream().collect(Collectors.averagingDouble(Student::getAge)); // 13.333333333333334 // 带上以上所有方法 DoubleSummaryStatistics statistics = list.stream().collect(Collectors.summarizingDouble(Student::getAge)); System.out.println("count:" + statistics.getCount() + ",max:"...
filter:过滤流中的某些元素 limit(n):获取n个元素 skip(n):跳过n元素,配合limit(n)可实现分页 distinct:通过流中元素的hashCode()和equals()去除重复元素 Stream<Integer>stream=Stream.of(6,4,6,7,3,9,8,10,12,14,14);Stream<Integer>newStream=stream.filter(s->s>5)//6 6 7 9 8 10 12 14 ...
stream().findFirst().get(); System.out.println(stu); 2.2.4 findAny 将返回当前流中的任意元素 // 返回任意元素 Student stu = students.stream().findAny().get(); System.out.println(stu); 2.2.5 count 返回流中元素总数 // 获取年龄大于25岁的总数 long count = students.stream().filter(...
Stream流提供丰富中间操作,简化源数据计算,优于集合/数组等容器。一个流可跟随零/多中间操作,其作用主要为打开流做数据映射/过滤,返回新流,交给下一操作。有些操作惰性化的,调用方法不开始遍历,需等到终端操作,如filter、map等。使用示例中的数据,全局使用List<Integer> intList = Arrays.asList(123, 0,...
// 筛选name是Tom的用户users.stream() .filter(user->"Tom".equals(user.name)) .forEach(System.out::println); // 输出 {"age":1,"name":"Tom"} 3.5 映射 map/flatMap // 打印users里的nameusers.stream().map(User::getName).forEach(System.out::println); // 输出 Tom Jerry //...
Optional<Integer> findFirst = list.stream().parallel().filter(x>x>6).findFirst();在使用stream之前,先理解一个概念:Optional 。Optional类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。案例介绍和实战演练 案例使用的员工类 这是后面案例中使用的员工类:...
Optional<Integer>findFirst=list.stream().parallel().filter(x->x>6).findFirst(); 三、Stream流的使用 在使用stream之前,先理解一个概念:Optional。 Optional类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。