跳转至

方法引用

一、方法引用符

:::引用运算符

用于简写Lambda表达式

public interface test4 {
    void domain(String s);
}
public class doDemo4 {
    public static void main(String[] args) {
        doDoMain((String s) -> {
            System.out.println(s);
        });
        doDoMain((s) -> System.out.println(s));
        doDoMain(s -> System.out.println(s));
        doDoMain(System.out::println);
    }

    public static void doDoMain(test4 t) {
        t.domain("domain");
    }
}

二、Lambda支持的方法引用

1、引用类方法

格式:类名::类方法(静态方法)

lambda表达式被类方法替代时,形参全部传递给静态方法

2、引用对象的实例方法

格式:对象::成员方法

lambda表达式被实例方法替代时,形参全部传递给静态方法

3、引用类的实例方法

格式:类名::成员方法

lambda表达式被实例方法替代时:第一个参数作为调用者、后面的形参传递给方法

4、引用构造器

格式:类名::new

lambda表达式被构造器替代时,形参全部传递构造器