我正在浏览在Java 8中使用Predicate的代码。有人帮助我使用Predicate的最佳案例场景
答案 0 :(得分:2)
当您需要一个带有一个参数并返回Predicate
的函数时,可以使用boolean
(javadoc)。例如,在您要过滤流或查找满足某些条件的第一个流元素的情况下。
答案 1 :(得分:0)
从文档中https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html
这是一个功能界面,代表从某事物到bool的功能。 Java没有函数类型或不受限制的第一类函数,但它确实有代表特定函数子类型的接口。
https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html
功能接口为lambda表达式提供目标类型 方法参考。
以下是谓词的示例,如果字符串的长度大于5,则返回true
。
Predicate<String> i = (s) -> s.length(5) > 5;
任何以Predicate
作为参数的方法都支持lambda语法,因为这是可以推断出lambda表达式的具体类型之一。
Predicate
与普通Function
(https://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html)不同,因为Function
无法返回基本类型。