jdk8 list max函数
时间: 2023-10-26 12:05:40 浏览: 178
JDK8代码实践,简单易懂
在JDK8中,List类并没有直接提供max函数。不过,你可以使用Stream流的max函数来实现这个功能。你可以通过以下代码来获取列表中年龄最大的学生对象:
List<Student> list = Arrays.asList(new Student(32),new Student(33),new Student(21),new Student(29),new Student(18));
Optional<Student> max = list.stream().max((s1, s2) -> Integer.compare(s1.getAge(), s2.getAge()));
max.ifPresent(s -> System.out.println(s.getAge()));
这段代码会返回年龄最大的学生对象,并打印出其年龄为33。使用Stream的max函数需要传入一个Comparator对象,用于比较两个元素的大小。在这个例子中,我们通过Lambda表达式传入了一个比较器,比较学生对象的年龄。
阅读全文