天天看點

jdk8新特性之for循環jdk8新特性之for循環

jdk8新特性之for循環

1.首先周遊一個List

方式1.一開始是這樣的:

1 public static void test1(List list) {

2 for (int i = 0; i < list.size(); i++) {

3 System.out.println(list.get(i));

4 }

5 }

方式2.當然稍微進階一點的是這樣:

1 public static void test2(List list) {

2 for (int i = 0,lengh=list.size(); i < lengh; i++) {

3 System.out.println(list.get(i));

4 }

5 }

方式3.還有就是Iterator周遊:

1 public static void test3(List list) {

2 Iterator iterator = list.iterator();

3 while(iterator.hasNext()){

4 System.out.println(iterator.next());

5 }

6 }

方式4.後來有了增強for循環:

1 public static void test4(List list) {

2 for(String str:list){

3 System.out.println(str);

4 }

5 }

方式5.java8以後新增的方式:

1 public static void test5(List list) {

2 //list.forEach(System.out::println);和下面的寫法等價

3 list.forEach(str->{

4 System.out.println(str);

5 });

6 }

方式6.還有另一種:

1 public static void test6(List list) {

2 list.iterator().forEachRemaining(str->{

3 System.out.println(str);

4 });

5 }

效率的問題:普通(數量級10W以下,非并行)周遊一個集合(List、Set、Map)如果在意效率,不要使用java8的foreach,雖然它很友善很優雅。

任何時候使用增強for循環是你不二的選擇