MAP遍历

/**
 * MAP遍历
 *
 * @author: NPF
 * @date: 2018/2/27.
 */
public class MapUtil {


public static void main(String[] args) {
    Map<String, Integer> tempMap = new HashMap<>();
    tempMap.put("a", 111);
    tempMap.put("b", 222);
    tempMap.put("c", 333);

    each1(tempMap);
    each2(tempMap);
    each3(tempMap);
    each4(tempMap);
    eachMapList();


}

/**
 * JDK1.4
 * Map entrySet() 遍历
 *
 * @param tempMap
 */
private static void each1(Map<String, Integer> tempMap) {
    Iterator it = tempMap.entrySet().iterator();
    while (it.hasNext()) {
        Map.Entry entry = (Map.Entry) it.next();
        String key = (String) entry.getKey();
        Integer value = (Integer) entry.getValue();
        System.out.println("key=" + key + " value=" + value);
    }
}

/**
 * JDK1.5中,应用新特性For-Each循环
 *
 * @param tempMap
 */
private static void each2(Map<String, Integer> tempMap) {
    for (Map.Entry<String, Integer> entry : tempMap.entrySet()) {
        String key = entry.getKey();
        Integer value = entry.getValue();
        System.out.println("key=" + key + " value=" + value);
    }
}

/**
 * Map keySet() 遍历
 *
 * @param tempMap
 */
private static void each3(Map<String, Integer> tempMap) {
    /**
     * 循环获取key,通过key再获取value
     */
    for (Iterator i = tempMap.keySet().iterator(); i.hasNext(); ) {
        String key = (String) i.next();
        Integer value = tempMap.get(key);
        System.out.println("key=" + key + " value=" + value);
    }
    /**
     * 循环获取value
     */
    for (Iterator i = tempMap.values().iterator(); i.hasNext(); ) {
        Integer value = (Integer) i.next();
        System.out.println("value=" + value);
    }
}

/**
 * Map keySet()遍历
 *
 * @param tempMap
 */
private static void each4(Map<String, Integer> tempMap) {
    for (String key : tempMap.keySet()) {
        Integer value = tempMap.get(key);
        System.out.println("key=" + key + " value=" + value);
    }
}

/**
 * 遍历Map <String, ArrayList> map = new HashMap <>();
 */
private static void eachMapList() {
    /**
     * 方式一
     */
    Map<String, ArrayList<String>> map1 = new HashMap<>();
    Set<String> keys = map1.keySet();
    Iterator<String> iterator = keys.iterator();
    while (iterator.hasNext()) {
        String key = iterator.next();
        ArrayList<String> arrayList = map1.get(key);
        for (String value : arrayList) {
            System.out.println(key + "==方式一==" + value);
        }
    }
    /**
     * 方式二
     */
    Map<String, List<String>> map2 = new HashMap<>();
    for (Map.Entry entry : map2.entrySet()) {
        String key = entry.getKey().toString();
        List<String> list = (List) entry.getValue();
        for (String value : list) {
            System.out.println(key + "==方式二==" + value);
        }
    }

}}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 门 一束光 穿过黑夜 它为何变成了 时间 我怀疑地望着 挡住阳光的 那一扇门 在它的背后 是虚无 是真实 还是一种...
    阿列布阅读 1,463评论 0 0
  • 当我头一天晚上发现我们这里有一个东西要改一下,我发一个邮件出去,有的第二天上班的时候就发现这个东西改过来了,已经上...
    waynedeng阅读 3,991评论 2 3

友情链接更多精彩内容