如何用映射容纳方法引用
声明一个映射来存储方法引用,这些方法引用是类的getter方法,但属于不同的类,具有不同的返回值类型,如User::getUsername、Group::getName、Post::getId。
函数式接口可以接收单个方法引用,但其泛型参数因方法签名而异。声明容纳这些函数式接口的映射时,难以指定通用的泛型参数。
一位开发者提供了使用IntelliJ IDEA代码提示的解决方案。在一个新行输入Arrays.asList(getUsername, getId)后,输入.var并回车。IDEA会提示列表类型和变量名,类型为List extends Function, ?>>。
映射声明类似,但类型声明进行了简化:Map
以上就是如何用映射容纳不同类、不同返回值类型的 getter 方法引用?的详细内容,更多请关注图灵教育其它相关文章!