如何在 Java 中使用 lambda 和方法引用实现 LongPredicate?
java 8object oriented programmingprogramming更新于 2025/4/23 11:07:17
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 表达式 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; // 方法引用 boolean result = intPredicate.test(30); System.out.println(result); } static boolean test(long input) { if(input == 50) { return true; } else return false; } }
输出
false