jdk1.8 新特性之 forEach 循环遍历

常规情况下我们基本都是这么写的

List<Integer> numbers = new ArrayList<>();

//no.1
for(Integer number : numbers){
    System.out.println(number);
}

//no.2
for(int index=0,len=numbers.size();index<len;index++){
    System.out.println(numbers.get(index));
}

使用jdk1.8后,可这么写

//no.1
numbers.forEach((Integer integer) -> {
    System.out.println(integer);
});

//no.2
numbers.forEach(integer -> {
    System.out.println(integer);
});

//no.3
numbers.forEach(integer -> System.out.println(integer));

//no.4
numbers.forEach(System.out::println);

//no.5
numbers.forEach(new MyConsumer());

MyConsumer类如下,主要是接口的实现

class MyConsumer implements Consumer<Integer>{

    @Override
    public void accept(Integer integer) {
        System.out.println(integer);
    }
}

版权声明:本文为dounine原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。