1 package cn.itcast.p6.map.demo;
2
3 import java.util.HashMap;
4 import java.util.Iterator;
5 import java.util.Map;
6 import java.util.Set;
7
8 public class MapDemo {
9 public static void main(String[] args) {
10 Map<Integer,String> map = new HashMap<Integer, String>();
11 // method(map);
12 method_3(map);
13 }
14 public static void method_3(Map<Integer, String> map) {
15 map.put(8, "wangwu");
16 map.put(2, "zhaoliu");
17 map.put(7, "xiaoqiang");
18 map.put(6, "wangcai");
19
20
21 /*
22 * 通过Map转成set就可以迭代。
23 * 找到了另一个方法。entrySet。
24 * 该方法将键和值的映射关系作为对象存储到了Set集合中,而这个映射关系的类型就是Map.Entry类型
25 *
26 */
27 Set<Map.Entry<Integer, String>> entrySet = map.entrySet();
28
29 Iterator<Map.Entry<Integer, String>> it = entrySet.iterator();
30
31 while(it.hasNext()) {
32 Map.Entry<Integer, String> me = it.next();
33 Integer key = me.getKey();
34 String value = me.getValue();
35 System.out.println(key+"::::"+value);
36 }
37
38 }
39
40 interface MyMap{
41 public static interface MyEntry{//内部接口 类似于Map.Entry
42 void get();
43 }
44 }
45 class MyDemo implements MyMap.MyEntry{
46 public void get() {
47
48 }
49 }
50 class Outer{
51 static class Inner{
52 static void show() {
53
54 }
55 }
56 }
57 public static void method_2(Map<Integer, String> map) {
58 map.put(8, "wangwu");
59 map.put(2, "zhaoliu");
60 map.put(7, "xiaoqiang");
61 map.put(6, "wangcai");
62
63 //取出map中的所有元素。
64 //原理,获取keySet方法获取map中所有的键所在的Set集合,再通过Set的迭代器获取到每一个键
65 //再对每一个键通过map集合的get方法获取其对应的值即可。
66
67 Set<Integer> keySet = map.keySet();
68
69 Iterator<Integer> it = keySet.iterator();
70
71 while(it.hasNext()) {
72 Integer key = it.next();
73 String value = map.get(key);
74 System.out.println(key+":"+value);
75 }
76 }
77 public static void method(Map<Integer,String> map) {//学号和姓名
78 //添加元素
79
80 System.out.println(map.put(8, "wangcai"));//null
81 System.out.println(map.put(8, "xiaoqiang"));//wangcai 存相同键值会覆盖
82 map.put(2, "zhangsan");
83 map.put(7, "zhaoliu");
84
85 //删除。
86 System.out.println("remove:"+map.remove(2));//remove:zhangsan
87 System.out.println(map);//{7=zhaoliu, 8=xiaoqiang}
88
89 //判断。
90 System.out.println("containskey:"+map.get(8));//containskey:xiaoqiang
91
92 //获取。
93 System.out.println("get:"+map.get(6));//get:null
94 System.out.println(map);
95
96
97 }
98 }

MapDemo

集合框架-Map重点方法entrySet演示的更多相关文章

  1. 第51节:Java当中的集合框架Map

    简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...

  2. Java集合框架——Map接口

    第三阶段 JAVA常见对象的学习 集合框架--Map集合 在实际需求中,我们常常会遇到这样的问题,在诸多的数据中,通过其编号来寻找某一些信息,从而进行查看或者修改,例如通过学号查询学生信息.今天我们所 ...

  3. Java当中的集合框架Map

    简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...

  4. Java集合框架Map接口

    集合框架Map接口 Map接口: 键值对存储一组对象 key不能重复(唯一),value可以重复 常用具体实现类:HashMap.LinkedHashMap.TreeMap.Hashtable Has ...

  5. Java中的集合框架-Map

    前两篇<Java中的集合框架-Commection(一)>和<Java中的集合框架-Commection(二)>把集合框架中的Collection开发常用知识点作了一下记录,从 ...

  6. java集合框架——Map

    一.概述 1.Map是一种接口,在JAVA集合框架中是以一种非常重要的集合.2.Map一次添加一对元素,所以又称为“双列集合”(Collection一次添加一个元素,所以又称为“单列集合”)3.Map ...

  7. JAVA基础第五章-集合框架Map篇

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  8. JAVA集合框架 - Map接口

    Map 接口大致说明(jdk11): 整体介绍: 一个将键映射到值的(key-value)对象, 键值(key)不能重复, 每个键值只能影射一个对象(一一对应). 这个接口取代了Dictionary类 ...

  9. java集合框架map

    Map<K,V> K key V value Map集合:该集合存储键值对.一对一对往里存,而且要保证键的唯一性. 1,添加. 2,删除. 3,判断. 4,获取. Map |--Hasht ...

随机推荐

  1. JAVA字符串拼接操作规则说明

    1.常量与常量的拼接结果在常量池,原理是编译期优化 public void test1() { String s1 = "a" + "b" + "c& ...

  2. 【LeetCode】226. Invert Binary Tree 翻转二叉树(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归 迭代 日期 题目地址: https://lee ...

  3. 【Android开发】微信精选,文章资讯类App开发记录总结

    缘起 微信精选的App开发来源是在聚合数据上看到了有免费的微信精选的数据接口,无限调用.相对于其他的诸如违章查询,医药查询,NBA赛事等等,我感觉还是微信文章精选这个数据接口离我最近,所以想着拿着个数 ...

  4. 【经验】 Java BigInteger类以及其在算法题中的应用

    [经验] Java BigInteger类以及其在算法题中的应用 标签(空格分隔): 经验 本来在刷九度的数学类型题,有进制转换和大数运算,故而用到了java BigInteger类,使用了之后才发现 ...

  5. 【LeetCode】540. Single Element in a Sorted Array 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 方法一:异或 方法二:判断相邻元素是否相等 方法三:二分查找 ...

  6. 【LeetCode】559. Maximum Depth of N-ary Tree 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 DFS BFS 日期 题目地址:https://le ...

  7. D. Water Tree

    D. Water Tree time limit per test 4 seconds memory limit per test 256 megabytes input standard input ...

  8. D. Chloe and pleasant prizes

    D. Chloe and pleasant prizes time limit per test 2 seconds memory limit per test 256 megabytes input ...

  9. docker容器跨主机网络overlay

    前提:已部署好docker服务服务预计部署情况如下10.0.0.134 Consul服务10.0.0.135 host1  主机名mcw510.0.0.134 host2  主机名mcw6host1与 ...

  10. 美和易思 MOOT去鼠标检测,快进,倍速,自动下一章

    F12 放到 console 直接运行即可 或者油猴添加新脚本 核心去除网页绑定焦点事件代码: if (!-[1,] && !window.XMLHttpRequest || navi ...