Java 8 中的 Collectors maxBy() 方法


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

更新於: 30-Jul-2019

2K+次瀏覽

開始你的 職業

透過完成課程獲得認證

開始
廣告
© . All rights reserved.