Map的遍历

import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class TestMap_entry {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<String, String>();
        map.put("1", "wang1");
        map.put("4", "wang4");
        map.put("2", "wang2");
        map.put("3", "wang3");
        work(map);

    }
    public static void work(Map<String, String> map) {
        Collection<String> c = map.values();
        Iterator<String> it = c.iterator();
        System.out.println(c);
        for (; it.hasNext();) {
            System.out.println(it.next());
        }
    }

    // 利用keyset进行遍历,它的优点在于可以根据你所想要的key值得到你想要的 values,更具灵活性!!
    public static void workByKeySet(Map<String, String> map) {
        Set<String> key = map.keySet();
        for (Iterator<String> it = key.iterator(); it.hasNext();) {
            String s = (String) it.next();
            System.out.println(map.get(s));
        }
    }

    // 比较复杂的一种遍历在这里,呵呵~~他很暴力哦,它的灵活性太强了,想得到什么就能得到什么~~
    public static void workByEntry(Map<String, String> map) {
        Set<Map.Entry<String, String>> set = map.entrySet();
        for (Iterator<Map.Entry<String, String>> it = set.iterator(); it
                .hasNext();) {
            Map.Entry<String, String> entry = (Map.Entry<String, String>) it
                    .next();
            System.out.println(entry.getKey() + "--->" + entry.getValue());
        }
    }
}
posted @ 2012-12-27 22:03  樊鑫  阅读(58)  评论(0编辑  收藏  举报