如何使用 Java 中的 lambda 和方法引用來實現 LongPredicate?


LongPredicate  java.util.function 包中定義的一個函式式介面。此介面主要用於計算long 型別的輸入並返回boolean 型別的輸出。LongPredicate 可以用作lambda 表示式 方法 引用的分配目標。它包含一個抽象方法:test() 和三個預設方法:and()negate()or()

語法

@FunctionalInterface
interface LongPredicate {
 boolean test(long value);
}

Lambda 表示式的示例

import java.util.function.LongPredicate;

public class LongPredicateLambdaTest {
   public static void main(String args[]) {
      LongPredicate longPredicate = (long input) -> {    // lambda expression
         if(input == 50) {
            return true;
         } else
            return false;
      };
      boolean result = longPredicate.test(50);
      System.out.println(result);
   }
}

輸出

true


方法引用的示例

import java.util.function.LongPredicate;

public class LongPredicateMethodRefTest {
   public static void main(String args[]) {
      LongPredicate intPredicate = LongPredicateMethodRefTest::test; // method reference
      boolean result = intPredicate.test(30);
      System.out.println(result);
   }
   static boolean test(long input) {
      if(input == 50) {
         return true;
      } else
         return false;
   }
}

輸出

false

更新時間: 14-Jul-2020

共 209 次瀏覽

開啟你的職業

完成課程並獲得認證

立即開始
廣告