方法引用:“类::实例方法”的使用原理
在 Java 中,“类::实例方法”的方式可以方便地获取实例方法的引用。
原理剖析
如同问题注释所述,被引用方法的参数需要与抽象方法的第二个到最后一个参数保持一致。这是因为:
立即学习“Java免费学习笔记(深入)”;
引用实例方法的语法
类名::实例方法名
示例
ArrayList<String> list = new ArrayList<>(); Collections.addAll(list, "a", "b", "c"); list.stream() .map(String::toUpperCase) // 引用 String 类中的实例方法 toUpperCase() .forEach(System.out::println);
该代码将集合中的字母转为大写,由于数据流中的数据类型为 string,因此可以使用 string 类中的实例方法 string::touppercase 进行映射。
总结
“类::实例方法”的方式提供了获取实例方法引用的便捷途径,其原理在于实例对象类型的匹配,以及对实例方法参数的正确传参。