Java8中的方法引用是什么?
Java中的Lambda表达式使您可以将功能作为参数传递给方法。您也可以使用lambda表达式调用现有方法。
list.forEach(n -> System.out.println(n));
方法引用是简单,易于阅读的lambda表达式,可通过lambda表达式来调用/引用以及现有方法的名称。
语法
Object:methodName
示例
假设,如果我们有一个名为myInterface的接口,我们可以将功能/实现作为对象值传递,如下所示-
interface myInterface{void greet();
}
public class MethodReferences {
public static void main(String args[]) {
myInterface in = ()->System.out.println("Sample method");;
in.greet();
}
}
如果我们已经有此方法的实现,则可以将lambda表达式用作-
interface myInterface{void greet();
}
public class MethodReferences {
public void demo() {
System.out.println("Sample method");
}
public static void main(String args[]) {
MethodReferences obj = new MethodReferences();
myInterface in = ()-> obj.demo();
in.greet();
}
}
您可以使用方法引用而不是lambda表达式来引用现有方法,例如-
interface myInterface{void greet();
}
public class MethodReferences {
public void demo() {
System.out.println("Sample method");
}
public static void main(String args[]) {
MethodReferences obj = new MethodReferences();
myInterface in = obj::demo;
in.greet();
}
}
输出结果
Sample method
以上是 Java8中的方法引用是什么? 的全部内容, 来源链接: utcz.com/z/327314.html