Java 8中的收集器minBy()方法

minBy()Java 8中Collectors类的方法返回一个Collector,该Collector根据给定的Comparator生成最小元素,描述为Optional <T>

语法如下

static <T>Collector<T,?,Optional<T> minBy(Comparator<? super T> comparator)

在这里,参数

  • T-输入元素的类型

  • 比较器–用于比较元素

  • 选项<T> -可能包含或可能不包含非null值的容器对象

要使用Java中的Collectors类,请导入以下包

import java.util.stream.Collectors;

以下是mainBy()在Java中实现方法的示例

示例

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("45", "71", "25", "87");
      Optional<String> op = stream.collect(Collectors.minBy(String::compareTo));
      if (op.isPresent()) {
         System.out.println(op.get());
      } else {
         System.out.println("Nothing!");
      }
   }
}

输出结果

25