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循環是你不二的選擇

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章