package com.lm;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
import java.util.function.Supplier;
/**
*
* Consumer<T> :消费型接口
* void accept(T t) :
*
* Supplier <T> : 供给型接口
* T get();
*
* Function<T,R> :函数型接口
* R apply(T t);
*
* Predicate<T> : 断言型接口
* boolean test(T t)
*
*/
public class TestLambda11 {
//产生一些对象 100以内的随机数
//Supplier <T> : 供给型接口
@Test
public void test1() {
List<Integer> numList = getNumList(10,() -> (int)(Math.random()*100));//
for (Integer num : numList) {
System.out.println(num);
}
System.out.println("--------------------------");
}
//产生指定数量的整数放到集合中
public List<Integer> getNumList(int num, Supplier<Integer> sup){
List<Integer> list = new ArrayList<>();
for (int i = 0; i < num; i++) {
Integer n = sup.get(); //产生整数
list.add(n);
}
return list;
}
}