Collects.maxby
时间: 2024-09-25 18:10:03 浏览: 21
基于51单片机的语音导盲系统的设计毕业设计.doc
`Collectors.maxBy()`是Java Stream API中的一个函数式工具方法,它用于收集流中的最大元素,基于提供的Comparator进行比较。这个方法通常与`max()`函数一起使用,返回一个Optional对象,该对象包含了流中按照指定比较器排序后的最大元素。
使用示例:
```java
import java.util.Comparator;
import java.util.stream.Collectors;
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
String maxName = names.stream()
.collect(Collectors.maxBy(Comparator.comparing(String::length)))
.orElse(null); // 或者提供默认值,如果流为空
System.out.println(maxName); // 输出最长的名字,例如"Charlie"
```
在这个例子中,我们首先创建了一个字符串列表,然后通过`maxBy()`找出长度最长的名称。
阅读全文