说明
Supplier 接口是一个函数,该函数允许在调用时扩展,即运行结果可以作为另一个常规方法的入参。
和Consumer 的区别在于,Consumer是先定义了如何处理入参,然后对处理结果传入到匿名函数,即Consumer负责加工出一个入参,然后传递给任意的方法。
相比之下,Consumer 适合没有返回值的情况。
Supplier 是我处理,别人调用。
案例
案例1
public static void main(String[] args) {
Supplier<String> stringSupplier = ()->"aaa";
Supplier<String> stringSupplier2 = ()->{
String name="aaa";
name = name+"bbb";
return name;
};
System.out.println(stringSupplier.get());
System.out.println(stringSupplier2.get());
}
案例2
比如下面的案例,我的函数是一个字符串,然后字符串由匿名来组装
import java.util.function.Supplier;
public static void main(String[] args) {
int type = 1;
if(type==1){
System.out.println(
supplier(()->"普通用户",System.currentTimeMillis())
);
}else{
System.out.println(
supplier(()->{
String s= "管理员";
return s;
},System.currentTimeMillis())
);
}
}
public static String supplier(Supplier<String> stringSupplier,long timeStamp){
return timeStamp+":"+stringSupplier.get()+" 登录了";
}
参考
https://www.cnblogs.com/liyihua/p/12286073.html
2332

被折叠的 条评论
为什么被折叠?



