java中的双列集合Map
创始人
2024-06-03 00:00:44
0

一、双列集合的特点
(1)双列集合一次需要存一对数据,分为键和值;
(2)键不能重复,值可以重复;
(3)键和值是一一对应的;
(4)“键值对”或者“键值对对象”在Java中叫做“Entry对象”。

二、双列集合的体系结构
在这里插入图片描述

上图中红色的圈表示接口,蓝色的圈表示类。

三、Map常见的API
Map是双列集合的顶层接口,它的功能是全部双列集合都可以继承使用的。
在这里插入图片描述

//创建Map集合的对象
Map m = new HashMap<>();
//添加元素
m.put("杨过","小龙女");
m.remove("杨过");

注意:(1)put()方法除了添加功能外,还有覆盖的功能。添加数据时如果键不存在,则将键值对加入Map集合中,且方法返回值为null;若键已存在,则用新的键值对替代旧的,且方法返回值为被覆盖的旧的键值对。
(2)remove()根据键值删除键值对。

四、Map集合的三种遍历方法
1.键找值:获取所有的键keySet(),把这些键放到一个单列集合中。

Map map = new HashMap<>();
map.put("杨过","男");
map.put("小龙女","女");
map.put("杨蓉","女");Set keys = map.keySet();
for(String key:keys){
String value= map.get(key);//根据键获得值
System.out.println(key+"="+value);
}

2.键值对:通过键值对对象进行遍历entrySet()

Map map = new HashMap<>();
map.put("杨过","男");
map.put("小龙女","女");
map.put("杨蓉","女");
Set> entries = map.entrySet();//Map.Entry表示键值对对象
for(Map.Entry entry:entries)
{
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"="+value);
}

3.使用Lambda表达式

Map map = new HashMap<>();
map.put("杨过","男");
map.put("小龙女","女");
map.put("杨蓉","女");
map.forEach((String key,String value)->{
System.out.println(key+"="+value);
});

五、HashMap
1.特点
(1)HashMap是Map里面的一个实现类;
(2)没有额外需要学习的特有方法,直接使用Map里面的方法就可以了;
(3)特带你都是由键决定:无序、不重复、无索引。
(4)HashMap和HashSet一样。
在这里插入图片描述

相关内容

热门资讯

官方通报疑医生暴力接生致婴儿残... 转自:北京时间 【#官方通报疑医生暴力接生致婴儿残疾#】...
华泰人寿高层大“换血” 记者丨林汉垚编辑丨肖嘉7月10日,华泰人寿保险股份有限公司(以下简称“华泰人寿”)任命牛增亮为公司总...
三地三代科研人接力种出新滋味   7月的河北沽源,千亩生菜迎来采收高峰,从田间直供全国肯德基餐厅。与此同时,一筐筐新鲜蔬菜在鲜切菜...
巨轮智能涨2.41%,成交额5... 7月11日,巨轮智能盘中上涨2.41%,截至13:46,报8.08元/股,成交5.26亿元,换手率3...
井松智能涨2.14%,成交额2... 7月11日,井松智能盘中上涨2.14%,截至13:46,报18.58元/股,成交2674.65万元,...
灿瑞科技涨2.02%,成交额2... 7月11日,灿瑞科技盘中上涨2.02%,截至13:47,报32.36元/股,成交2404.54万元,...
寻蓟城觅燕都   ▌谭烈飞 著  北京什么时候从中国北方的军事重镇发展成为都城的呢?公元前的周武王时期,北京地区的...
以太坊基金会发文阐述以太坊全面... 吴说获悉,以太坊基金会博客发布文章,阐述以太坊全面采用零知识证明(ZK),首步为部署 L1 zkEV...
佰维存储涨2.04%,成交额3... 7月11日,佰维存储盘中上涨2.04%,截至13:49,报67.05元/股,成交3.90亿元,换手率...
“杨少华剪彩饭店暂停营业”?平... 来源:中国青年报微信公号7月9日,相声演员杨少华去世,享年94岁。噩耗传出后,多位网友都在社交平台发...