package com.jackey.topic;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

//循环遍历map的方法
public class CircleMap {
 public static void main(String[] args) {
  Map<String, Integer> tempMap = new HashMap<String, Integer>();
  tempMap.put("a", 1);
  tempMap.put("b", 2);
  tempMap.put("c", 3);
  // JDK1.4中
  // 遍历方法一 hashmap entrySet() 遍历
  System.out.println("方法一");
  Iterator it = tempMap.entrySet().iterator();
  while (it.hasNext()) {
   Map.Entry entry = (Map.Entry) it.next();
   Object key = entry.getKey();
   Object value = entry.getValue();
   System.out.println("key=" + key + " value=" + value);
  }
  System.out.println("");
  // JDK1.5中,应用新特性For-Each循环
  // 遍历方法二
  System.out.println("方法二");
  for (Map.Entry<String, Integer> entry : tempMap.entrySet()) {
   String key = entry.getKey().toString();
   String value = entry.getValue().toString();
   System.out.println("key=" + key + " value=" + value);
  }
  System.out.println("");

// 遍历方法三 hashmap keySet() 遍历
  System.out.println("方法三");
  for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {
   Object obj = i.next();
   System.out.println(obj);// 循环输出key
   System.out.println("key=" + obj + " value=" + tempMap.get(obj));
  }
  for (Iterator i = tempMap.values().iterator(); i.hasNext();) {
   Object obj = i.next();
   System.out.println(obj);// 循环输出value
  }
  System.out.println("");

// 遍历方法四 treemap keySet()遍历
  System.out.println("方法四");
  for (Object o : tempMap.keySet()) {
   System.out.println("key=" + o + " value=" + tempMap.get(o));
  }
  System.out.println("11111");

// java如何遍历Map <String, ArrayList> map = new HashMap <String,
  // ArrayList>();
  System.out
    .println("java  遍历Map <String, ArrayList> map = new HashMap

<String, ArrayList>();");
  Map<String, ArrayList> map = new HashMap<String, ArrayList>();
  Set<String> keys = map.keySet();
  Iterator<String> iterator = keys.iterator();
  while (iterator.hasNext()) {
   String key = iterator.next();
   ArrayList arrayList = map.get(key);
   for (Object o : arrayList) {
    System.out.println(o + "遍历过程");
   }
  }
  System.out.println("2222");
  Map<String, List> mapList = new HashMap<String, List>();
  for (Map.Entry entry : mapList.entrySet()) {
   String key = entry.getKey().toString();
   List<String> values = (List) entry.getValue();
   for (String value : values) {
    System.out.println(key + " --> " + value);
   }
  }
 }
}

HashMap遍历的更多相关文章

  1. Java中HashMap遍历的两种方式

    Java中HashMap遍历的两种方式 转]Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: ...

  2. [Java] HashMap遍历的两种方式

    Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml第一种: Map map = new HashMap( ...

  3. HashMap 遍历的两种方式及性能比较

    HashMap 是Java开发中经常使用的数据结构.相信HashMap 的基本用法你已经很熟悉了.那么我们该如何遍历HashMap 呢?哪种遍历方式的性能更好呢?本篇文章来为你解决这个疑惑. 一.Ha ...

  4. HashMap遍历的两种方式

    第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) {    ...

  5. HashMap遍历方式探究

    HashMap的遍历有两种常用的方法,那就是使用keyset及entryset来进行遍历,但两者的遍历速度是有差别的,下面请看实例: package com.HashMap.Test; import ...

  6. HashMap遍历,推荐使用entrySet()

    之前map遍历,偶尔会先去keyset然后再遍历keyset 比如 Map map = new HashMap(); Iterator it = map.keySet().iterator(); wh ...

  7. HashMap遍历和使用

    map的几种遍历方式: Map< String, String> map = new HashMap<>(); map.put("aa", "@s ...

  8. hashMap遍历方式

    package Ch17; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java ...

  9. Java HashMap 遍历、删除、排序

    首先创建一个map对象,并依次放入几个测试数据 HashMap<String, Integer> map = new HashMap<String, Integer>(); m ...

随机推荐

  1. Robberies(简单的01背包 HDU2955)

    Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  2. linux主次设备号介绍

    1.主设备号与次设备号的功能 在Linux内核中,主设备号标识设备对应的驱动程序,告诉Linux内核使用哪一个驱动程序为该设备(也就是/dev下的设备文件)服务:而次设备号则用来标识具体且唯一的某个设 ...

  3. ubuntu /etc/profile和/etc/environment的比较

    先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文. 将/etc/profile 中的export LANG=zh_CN删除,将LNAG=zh_C ...

  4. SharePoint自动化系列——Site/Web/List级别的导航菜单

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 需求:在不同的测试用例中,对脚本中不确定的因素需要和用户交互来确定,比如选择哪个site,选择哪个 ...

  5. SQL Server 存储过程(转载)

    SQL Server 存储过程 Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这 ...

  6. 编译android源码官方教程(5)编译完之后刷机、编译fastboot

    Running Builds IN THIS DOCUMENT Building fastboot and adb Booting into fastboot mode Unlocking the b ...

  7. ubuntu16.04 搭建 Mysql服务器

    ubuntu16.04 安装 mysql5.7 ,并配置远程访问 安装mysql及其可选组件 apt-get install mysql-serverapt-get install mysql-cli ...

  8. 【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目(三)

    [项目管理和构建]十分钟教程,eclipse配置maven + 创建maven项目(三) 上篇博文中我们介绍了maven下载.安装和配置(二),这篇博文我们配置一下eclipse,将它和maven结合 ...

  9. 我的android学习经历13

    ToggleButton控件的使用 ToggleButton控件看名字就可以知道它是一个 “开关” 控件,也就是有两种不同状态的按钮. 主要的特别属性有三个: android:textOn=" ...

  10. 四HttpServletResponse常见应用——生成验证码

    转载自http://www.cnblogs.com/xdp-gacl/p/3791993.html 一.HttpServletResponse常见应用——生成验证码 1.1.生成随机图片用作验证码 生 ...