繁体   English   中英

了解Java谓词

[英]Understanding Java Predicates

我在理解Java谓词时遇到问题...

例:

public class UserPredicates {
 public static Predicate<User> isNameEmpty() {
  return p -> p.getFirstName().isEmpty() && p.getLastName().isEmpty();
 }
}

上面的示例使我感到困惑,它如何知道p具有方法getFirstName()getLastName()
如果我对它的理解正确, isNameEmpty()返回一个带有一个参数( p )的函数,但是编译器是否真的通过查看返回类型来找出类型?

返回的函数是Predicate接口中的test()吗?

Predicate<User>表示一个函数,该函数将User作为其参数,并返回boolean

参见Javadoc

接口谓词
...
类型参数:
T-谓词的输入类型

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM