代碼
提交代碼
import java.util.function.Function;
import java.util.function.Supplier;
public class MethodReferencesDemo5 {
static class Person {
private String name;
public Person() {
System.out.println("無參數(shù)構(gòu)造方法執(zhí)行了");
}
public Person(String name) {
System.out.println("單參數(shù)構(gòu)造方法執(zhí)行了");
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static void main(String[] args) {
// 使用 Lambda 表達(dá)式,調(diào)用無參構(gòu)造方法
Supplier<Person> supplier1 = () -> new Person();
supplier1.get();
// 使用方法引用,引用無參構(gòu)造方法
Supplier<Person> supplier2 = Person::new;
supplier2.get();
// 使用 Lambda 表達(dá)式,調(diào)用單參構(gòu)造方法
Function<String, Person> function1 = name -> new Person(name);
Person person1 = function1.apply("小慕");
System.out.println(person1.getName());
// 使用方法引用,引用單參構(gòu)造方法
Function<String, Person> function2 = Person::new;
Person person2 = function1.apply("小明");
System.out.println(person2.getName());
}
}
運(yùn)行結(jié)果