在Java8支持Lambda表达式以后,为了满足Lambda表达式的一些典型使用场景,JDK为我们提供了大量常用的函数式接口。它们主要在 java.util.function 包中,今天介绍其中的supplier接口
Supplier
接口是对象实例的提供者,定义了一个名叫get
的抽象方法,它没有任何入参,并返回一个泛型T对象。
以下为举例:
创建一个user类。
@Data
public class User {
private String name;
private String age;
public User(String name, String age) {
this.name = name;
this.age = age;
}
}
声明一个supplier的实例。
Supplier<User>supplier =() -> new User("xiaoming","18") ;
调用supplier接口。
public class TestController {
//声明一个实例
static Supplier<User>supplier =() -> new User("xiaoming","18") ;
public static void main(String args[]) {
User user = supplier.get();
log.info("name:{},age:{}",user.getName(),user.getAge());
}
}
输出结果:
可以看到supplier接口可以输出我们需要的数据!