1. 程式人生 > 其它 >集合框架-工具類-JDK5.0特性-ForEach迴圈

集合框架-工具類-JDK5.0特性-ForEach迴圈

 1 package cn.itcast.p4.news.demo;
 2 
 3 import java.util.ArrayList;
 4 import java.util.HashMap;
 5 import java.util.Iterator;
 6 import java.util.List;
 7 import java.util.Map;
 8 
 9 public class ForEachDemo {
10 
11     public static void main(String[] args) {
12         // TODO Auto-generated method stub
13 /* 14 * foreach語句: 15 * 格式: 16 * for(型別 變數 : Collection集合或者陣列) 17 * { 18 * 19 * } 20 * 21 * 傳統for和高階for的區別? 22 * 傳統for可以完成對語句執行很多次,因為可以定義控制迴圈的增量和條件。 23 * 24 * 高階for是一種簡化形式。 25 * 它必須有被遍歷的目標。該目標要麼是陣列,要麼是Collection單列集合。
26 * 27 * 對於陣列的遍歷如果僅僅是獲取陣列中的元素,可以使用高階for 28 * 如果要對陣列的角標進行操作建議使用傳統for。 29 * 30 * 31 */ 32 33 List<String> list= new ArrayList<String>(); 34 35 list.add("abc1"); 36 list.add("abc2"); 37 list.add("abc3");
38 39 for(String s : list) {//簡化書寫。只用於遍歷迭代,而Iterator可以在遍歷時對資料進行操作 40 System.out.println(s); 41 } 42 43 int[] arr = {3,1,5,7,4}; 44 45 for(int i : arr) { 46 System.out.println(i); 47 } 48 //可以使用高階for遍歷map集合嗎 49 //不能直接用,可以講map轉成單列的set就可以了 50 Map<Integer, String> map = new HashMap<Integer, String>(); 51 52 map.put(3, "zhangsan"); 53 map.put(1, "wangyi"); 54 map.put(7, "wangwu"); 55 map.put(4, "zhangsansan"); 56 57 for(Integer key : map.keySet()) { 58 String value = map.get(key); 59 System.out.println(key+"::"+value); 60 } 61 62 for(Map.Entry<Integer,String> me : map.entrySet()) { 63 Integer key = me.getKey(); 64 String value = me.getValue(); 65 66 System.out.println(key+":"+value); 67 } 68 // Iterator<String> it = list.iterator(); 69 // while(it.hasNext()) { 70 // System.out.println(it.next()); 71 // } 72 73 74 } 75 76 }
ForEachDemo