1. 程式人生 > >jdk1.8 新特性之 forEach 迴圈遍歷

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); } }