package test;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set; import org.junit.Before;
import org.junit.Test; /**
* 对于Map的三种方式遍历 1.keySet() 2.values() 3.entrySet()
* 三种方式得到Set之后,都可以使用 foreach或者iterator, 不能使用for,因为数据结构决定的
*
* @author Administrator
*
*/
public class MapCycle { Map<Integer, String> map; // 准备好数据
@Before
public void testData() {
map = new HashMap<Integer, String>();
map.put(1, "张学友");
map.put(2, "刘德华");
map.put(3, "郭富城");
map.put(4, "黎明");
map.put(5, "周润发");
} /** 测试三种方式,这三种方式最后都是遍历Set,于是都可以使用 foreach或者Iterator **/
// 方式1: keySet()方法获取到Set(key)
@Test
public void testFirst() {
Set<Integer> set = map.keySet();
for (Integer integer : set) {
System. out.println( map.get(integer));
}
} // 方式2:values()方法获取到Collection(value)
@Test
public void testSecond() {
Collection<String> collection = map.values();
for (String string : collection) {
System. out.println(string);
}
} // 方式3:entrySet()方法获取到Set<Entry<key,value>>
@Test
public void testThird() {
Set<Entry<Integer, String>> entries = map.entrySet();
for (Entry<Integer, String> entry : entries) {
System. out.println(entry.getValue());
}
}
}

Java遍历Map的3种方式的更多相关文章

  1. java 遍历Map的四种方式

      java 遍历Map的四种方式 CreationTime--2018年7月16日16点15分 Author:Marydon 一.迭代key&value 第一种方式:迭代entrySet 1 ...

  2. java遍历Map的几种方式

    1.遍历map的几种方式:private Hashtable<String, String> emails = new Hashtable<String, String>(); ...

  3. java遍历map的四种方式

    在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...

  4. Java遍历Map的4种方式

    public static void main(String[] args) { // 循环遍历Map的4中方法 Map<Integer, Integer> map = new HashM ...

  5. [转载] Java 遍历 Map 的 5 种方式

    目录 1 通过 keySet() 或 values() 方法遍历 2 通过 keySet 的 get(key) 获取值 3 通过 entrySet 遍历 4 通过迭代器 Iterator 遍历 5 通 ...

  6. Java遍历map的五种方式

    使用For-Each迭代entries 这是最常见的方法,并在大多数情况下更可取的.当你在循环中需要使用Map的键和值时,就可以使用这个方法 Map<Integer, Integer> m ...

  7. [JAVA]JAVA遍历Map的几种方式

    //遍历key for (String key : dic.keySet() ) { System.out.println(key + dic.get(key)); } //遍历values for ...

  8. 遍历map的几种方式

    1,平时开发中对map的使用很多,然后发现了很多map可能存在的各种问题:如HashMap 需要放置 1024 个元素,由于没有设置容量初始大小,随着元素不断增加,容量 7 次被迫扩大,resize ...

  9. 遍历map的6种方式

    1,平时开发中对map的使用很多,然后发现了很多map可能存在的各种问题:如HashMap 需要放置 1024 个元素,由于没有设置容量初始大小,随着元素不断增加,容量 7 次被迫扩大,resize ...

随机推荐

  1. android mContainer.setPersistentDrawingCache (int drawingCacheToKeep)

    mContainer.setPersistentDrawingCache(ViewGroup.PERSISTENT_ANIMATION_CACHE); persistentDrawingCache设置 ...

  2. CentOS 6.6 yum 搭建LAMP环境

    CentOS 查看操作系统版本 [root@oa ~]# cat /etc/redhat-releaseCentOS release 6.6 (Final) 参考linux centos yum安装L ...

  3. [3D]绘制XYZ小坐标轴

    源码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Slim ...

  4. XiaoShi657的留言板

    大家好,很荣幸能够借助此平台和大家分享.讨论编程技术! 有什么想对我说的请在这里留言吧

  5. JavaScript学习笔记之BOM

    BOM的核心对象是window,它既表示浏览器窗口以及页面可见区域,同时也是ECMAScript中的Globe对象,所有的全局变量和函数都是它的属性,并且所有的原声函数以及其他函数也都存在于它的命名空 ...

  6. SQL exist

    EXISTS = IN,意思相同不过语法上有点点区别,好像使用IN效率要差点,应该是不会执行索引的原因SELECT ID,NAME FROM A WHERE ID IN (SELECT AID FRO ...

  7. Java基础之一组有用的类——使用Scanner对象(TryScanner)

    控制台程序. java.util.Scanner类定义的对象使用正则表达式来扫描来自各种源的字符输入,并把输入显示为各种基本类型的一系列标记或者显示为字符串. 默认情况下,Scanner对象读取标记时 ...

  8. linux:磁盘的分割、检验、格式化与挂载

    新增一颗磁碟: 1.对磁碟进行分割,以建立可用的partition 2.对该分割槽partition进行格式化(format),以建立系统可用的filesystem 3.若要仔细点,可对刚刚建立的fi ...

  9. UITabBarController底层实现

    1.首先要了解:任何控制器,都能添加子控制器      UIViewController里面有一个方法:     - (void)addChildViewController:(UIViewContr ...

  10. yii框架中保存第三方登录信息

    (第三方登录) 创建应用,域名,详情请看:http://www.cnblogs.com/xujn/p/5287157.html 效果图: