利用Supplier接口编写lambda 表达式
1.java.util.function.Supplier
接口:
public interface Supplier<T> {
T get();
}
如果我们需要返回一个ArrayList对象,实现此接口,用匿名类的方式
Supplier<List> sl = new Supplier<List>() {
@Override
public List get() {
return new ArrayList();
}
} ;
2.现在我们来完整的例子看看使用匿名类和直接引用构造器的区别
2.1使用常规创建对象的方式;
public class TestOne {
public static void main(String[] args){
ArrayList<Integer> list = new ArrayList<>();
testSystemOut(list);
}
//方法参数为一个已经新建的对象
public static void testSystemOut(ArrayList<Integer> list) {
for (int i = 0; i < 10; i++) {
list.add(i);
}
System.out.println(list);
}
}
2.2用lambda表达式
public class TestThread1 {
public static void main(String[] args){
//第一种lambda