Java forEach 方式遍歷集合(Java 8 新特性)


JDK 8 新增 forEach 方式遍歷集合,這種方式比原來的 for each 循環還要簡潔和便利。

需要注意:如果你計算機安裝的是 JDK 8 以前的版本,是不支持 JDK 8 的新特性

List 集合遍歷

  • 原先 for each 遍歷 List 集合
List<String> arrayList = new ArrayList<>();
arrayList.add("A");
arrayList.add("B");
arrayList.add("C");
arrayList.add("D");
arrayList.add("E");

for (String item : arrayList){
    System.out.println(item);
}
  • Java 8 新特性 forEach 遍歷 List 集合
List<String> arrayList = new ArrayList<>();
arrayList.add("A");
arrayList.add("B");
arrayList.add("C");
arrayList.add("D");
arrayList.add("E")

arrayList.forEach(item->System.out.println(item));

  • 原先 for each 遍歷 Set 集合
Set<String> setList = new HashSet<>();
setList.add("A");
setList.add("B");
setList.add("C");
setList.add("D");
setList.add("E");

for (String item : setList){
    System.out.println(item);
}
  • Java 8 新特性 forEach 遍歷 Set 集合
Set<String> setList = new HashSet<>();
setList.add("A");
setList.add("B");
setList.add("C");
setList.add("D");
setList.add("E");

setList.forEach(item->System.out.println(item));

Map 集合遍歷

  • 原先 for each 遍歷 Map 集合
Map<String, Integer> items = new HashMap<>();
items.put("A", 10);
items.put("B", 20);
items.put("C", 30);
items.put("D", 40);
items.put("E", 50);
items.put("F", 60);

for (Map.Entry<String,Integer> entry : items.entrySet()) {
    System.out.println("key:"+entry.getKey()+";value:"+entry.getValue());
}
  • Java 8 新特性 forEach 遍歷 Map 集合
Map<String, Integer> items = new HashMap<>();
items.put("A", 10);
items.put("B", 20);
items.put("C", 30);
items.put("D", 40);
items.put("E", 50);
items.put("F", 60);

items.forEach((k,v)->System.out.println("key : " + k + "; value : " + v));

總結

初學 Java 的童鞋,可能對 JDK 8 新特性中 forEach 的用法感覺很奇怪,這種寫法似乎曾經從未見過。是的,這種寫法是基於 JDK 8 另一個新特性 Java 8 Lambda(拉姆達表達式)而來的。

JDK 8 新增了很多新特性,這些新特性一方面是對 Java 語言功能的擴展,一方面是對 Java 語言使用的簡化。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM