supplier的中文意思是提供者,跟Consumer类相反,Supplier类用于提供对象,它只有一个get方法,是一个抽象方法,需要编程者自定义想要返回的对象。
Supplier<Integer> supplier = new Supplier<Integer>() {
@Override
public Integer get() {
return new Random().nextInt(100);
}
};
int[] ints = new int[10];
for(int i = 0; i < 10; i++) {
ints[i] = supplier.get();
}
Arrays.stream(ints).forEach(System.out::println);
首先自定义了一个Supplier对象,对于其get方法,我每次都返回一个100以内的随机数,并在之后利用这个对象给一个长度为10的int数组赋值并输出。
输出结果:
49
27
14
46
8
97
20
82
75
30