Java中Map的三種遍歷方法

Map的三種遍歷方法:
1. 使用keySet遍歷,while循環;
2. 使用entrySet遍歷,while循環;
3. 使用for循環遍歷。
 
下面是測試代碼,最愛看代碼了,囉嗦再多也沒用。
 
 
Java面試寶典_pdf版:http://download.csdn.net/source/3563084
 
JSP技術知識點考查:http://download.csdn.net/source/3567902
 
import java.util.*;

public class MapTraverse {
	public static void main(String[] args) {
		String[] str = {"I love you", "You love he", "He love her", "She love me"};
		Map<Integer, String> m = new HashMap();
		for(int i=0; i<str.length; i++) {
			m.put(i, str[i]);
		}
		System.out.println("下面是使用useWhileSentence()方法輸出的結果:");
		useWhileSentence(m);
		System.out.println("下面是使用useWhileSentence2()方法輸出的結果:");
		useWhileSentence2(m);
		System.out.println("下面是使用useForSentence()方法輸出的結果:");
		useForSentence(m);
	}
	
	public static void useWhileSentence(Map<Integer, String> m) {
		Set s = (Set<Integer>)m.keySet();
		Iterator<Integer> it = s.iterator();
		int Key;
		String value;
		while(it.hasNext()) {
			Key = it.next();
			value = (String)m.get(Key);
			System.out.println(Key+":\t"+value);
		}
	}
	
	public static void useWhileSentence2(Map m) {
		Set s = m.entrySet();
		Iterator<Map.Entry<Integer, String>> it = s.iterator();
		Map.Entry<Integer, String> entry;
		int Key;
		String value;
		while(it.hasNext()) {
			entry = it.next();
			Key = entry.getKey();
			value = entry.getValue();
			System.out.println(Key+":\t"+value);
		}
	}
	
	public static void useForSentence(Map<Integer, String> m) {
		int Key;
		String value;
		for(Map.Entry<Integer, String> entry : m.entrySet()) {
			Key = entry.getKey();
			value = entry.getValue();
			System.out.println(Key+":\t"+value);
		}
	}
	
}

歡迎同道中人批評指正!
 

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