在Java中如何使用lambda表达式中的Supplier 接口?
Supplier<T>接口是一个预定义的接口,表示结果的提供者。它是使用lambda表达式、方法引用或默认构造函数实例化的。Supplier接口的函数方法是get()方法。此接口属于java.util.function函数接口。
语法
@FunctionalInterface public interface Supplier<T>
在下面的程序中,我们可以在lambda表达式中使用Supplier接口。因为lambda()只返回一个参数为空的表达式,所以它不接受任何参数。
示例
import java.util.*;
import java.util.function.*;
public class SupplierTest {
public static void main(String args[]) {
Supplier<String> supplier1 = () -> "Nhooo"; // lambda表达式
System.out.println(supplier1.get());
Supplier<Integer> supplier2 = () -> 7; // lambda表达式
System.out.println(supplier2.get());
Person p = new Person("Raja");
Person p1 = get(() -> p);
Person p2 = get(() -> p);
System.out.println(p1.equals(p2));
}
public static Person get(Supplier<Person> supplier) {
return supplier.get();
}
}
// Person 类
class Person {
public Person(String name) {
System.out.println(name);
}
}输出结果
Nhooo 7 Raja true
热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短