Java 中 Lambda 表示式的型別推斷?


型別推斷表示任何表示式的資料型別。例如,編譯器可以自動理解方法的返回型別或引數型別。引數列表中的型別可以省略,因為 java 已經知道函式式介面單一抽象方法的預期引數的型別。

語法

(var1, var2 …) -> { method body }

在下例中,我們可以按最後一個字元對String[] 陣列進行排序。

示例

import java.util.Arrays;

public class TypeInferencingLambdaTest {
   public static void main(String[] args) {
      String[] names = {"Raja", "Jai", "Adithya", "Surya", "Chaitanya", "Ravi", "Krishna"};
      Arrays.sort(names, (s1, s2) -> {    // Lambda Expression
         return (s1.charAt(s1.length()-1) - s2.charAt(s2.length()-1));
      });
      for(String str : names) {
         System.out.println(str);
      }
   }
}

輸出

Raja
Adithya
Surya
Chaitanya
Krishna
Jai
Ravi

更新日期:2020 年 7 月 11 日

895 檢視次數

開啟你的職業生涯

完成課程獲得認證

開始
廣告