Java 8 中的 Collectors maxBy() 方法
java 8object oriented programmingprogramming更新于 2024/10/16 20:15:00
Java 8 中 Collectors 类的 maxBy() 方法返回一个 Collector,该 Collector 根据给定的 Comparator(描述为 Optional<T>)生成最大元素。
语法如下
static <T> Collector<T,?,Optional<T>> maxBy(Comparator<? super T> comparator)
这里是参数
- T - 输入元素的类型
- comparator - 用于比较元素
- Options <T> - 一个容器对象,可能包含也可能不包含非空值
要使用 Java 中的 Collectors 类,请导入以下包
import java.util.stream.Collectors;
以下是在 Java 中实现 maxBy() 方法的示例
示例
import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; public class Demo { public static void main(String[] args) { Stream<String> stream = Stream.of("4", "7", "25", "87"); Optional<String> op = stream.collect(Collectors.maxBy(String::compareTo)); if (op.isPresent()) { System.out.println(op.get()); } else { System.out.println("Nothing!"); } } }
输出
87