集合框架-Map重点方法entrySet演示

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演示的更多相关文章
- 第51节:Java当中的集合框架Map
简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...
- Java集合框架——Map接口
第三阶段 JAVA常见对象的学习 集合框架--Map集合 在实际需求中,我们常常会遇到这样的问题,在诸多的数据中,通过其编号来寻找某一些信息,从而进行查看或者修改,例如通过学号查询学生信息.今天我们所 ...
- Java当中的集合框架Map
简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...
- Java集合框架Map接口
集合框架Map接口 Map接口: 键值对存储一组对象 key不能重复(唯一),value可以重复 常用具体实现类:HashMap.LinkedHashMap.TreeMap.Hashtable Has ...
- Java中的集合框架-Map
前两篇<Java中的集合框架-Commection(一)>和<Java中的集合框架-Commection(二)>把集合框架中的Collection开发常用知识点作了一下记录,从 ...
- java集合框架——Map
一.概述 1.Map是一种接口,在JAVA集合框架中是以一种非常重要的集合.2.Map一次添加一对元素,所以又称为“双列集合”(Collection一次添加一个元素,所以又称为“单列集合”)3.Map ...
- JAVA基础第五章-集合框架Map篇
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...
- JAVA集合框架 - Map接口
Map 接口大致说明(jdk11): 整体介绍: 一个将键映射到值的(key-value)对象, 键值(key)不能重复, 每个键值只能影射一个对象(一一对应). 这个接口取代了Dictionary类 ...
- java集合框架map
Map<K,V> K key V value Map集合:该集合存储键值对.一对一对往里存,而且要保证键的唯一性. 1,添加. 2,删除. 3,判断. 4,获取. Map |--Hasht ...
随机推荐
- windows10下vscode+cmake编译Qt5代码(2)
概述 本文依赖 前文 本文将介绍使用cmake语法屏蔽运行Qt exe的cmd窗口 解决办法 配置VS项目属性, 缺点: cmake重新 configure后,项目属性会重置,再次运行还将出现cmd弹 ...
- -fno-rtti -fno-exceptions
-fno-rtti 禁用运行时类型信息-fno-exceptions 禁用异常机制一般只有对程序运行效率及资源占用比较看重的场合才会使用, 如果要做这两个的话最好连libstdc++和其他所有的的c+ ...
- c++内存分布之虚析构函数
关于 本文代码演示环境: VS2017+32程序 虚析构函数是一种特殊的虚函数,可以知道,虚函数影响的内存分布规律应该也适用虚析构函数.看看实际结果. Note,一个类中,虚析构函数只能有一个. 本文 ...
- 1137 - Expanding Rods
1137 - Expanding Rods PDF (English) Statistics Forum Time Limit: 0.5 second(s) Memory Limit: 32 M ...
- haproxy-详解
负载均衡类型: 四层: LVS (Linux Virtual Server)HAProxy (High Availability Proxy)Nginx (1.9以上) 七层: HAProxyNgin ...
- CS5266参数|Capstone CS5266|CS5266应用方案
随着目前手机.笔电和平板类产品都是用的Type-C接口,特别是苹果类的笔电和平板就只有一个Type-C接口,在很多工作.学习.娱乐中突显很多不方便的情况,别是需要一些其他的功能如:鼠标键盘接口USB2 ...
- CSS基础-5 伪类
一.伪类 我们以a标签为例 伪类标签分为4类 1. 设置超链接默认的样式 a:link {属性:值;.....} 或者 a { 属性: 值;} 推荐使用这种方式 2 ...
- HDU 1576 A/B (两种解法)
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1576 分析:等式枚举法,由题意可得:, ,代入 , 得:,把变量 合在一起得: :即满足 为 倍 ...
- 还在用visio?这款画图工具才是真的绝!
最近有读者私信我,问我推文的配图是用什么工具画的,很好看,也想学习一下.今天就给大家介绍一下这款画图工具--Draw.io 概述 draw.io是一款免费的网页版画图工具(也有桌面版),支持流程图.U ...
- Visual Studio 2015 MFC之Button颜色变化-断点调试(Debug)
软件开发,对自己的程序进行调试很重要,本次文章在上一边随笔的基础上,介绍一下Button控件做显示灯的用法,Button控件的添加和变量设置等可以参考下面的的链接:Visaul Studio 2015 ...