Java学习笔记_Day23(双列集合)

双列集合的特点

  1. 双列集合一次需要存一对数据,分别为键和值
  2. 键不能重复,值可以重复
  3. 键和值是一一对应的,每一个键只能找到自己对应的值
  4. 键和值这个整体,我们称为"键值对"或者"键值对对象",在java中叫做"Entry对象"

Map集合中常用的API

其中put方法有覆盖的效果,如果键是存在的,会把原有的值覆盖,并把原有的值进行返回

Map集合的三种遍历方法

1.键找值

获取所有的键,把这些键放到一个单列集合中

Set<String> keys=map.keySet();

遍历单列集合,得到每一个键

for(String key:keys){

利用map集合中的键获取对应的值

String value=map.get(key);

}

2.键值对

通过一个方法获取所有的键值对对象,返回一个Set集合

Set<Map.Entry<String,String>> entries=map.entrySet();

遍历这个集合,得到里面的每一个键值对对象

for(Map.Entry<String,String> entry:entries){

利用entry方法调用get方法获取键和值

String key=entry.getKey();

String value=entry.getValue();

}

3.Lambda表达式

map.forEach((key,value)->System.out,println(key,value));

底层:其实是利用第二种方式进行遍历,依次得到每一个键和值

再调用accept方法

相关推荐
小羽网安7 小时前
从零开始学习 sql 注入,常见的 sql 注入解析
数据库·sql·学习
半瓶榴莲奶^_^8 小时前
jvm java虚拟机
java·jvm
想成为优秀工程师的爸爸13 小时前
第十九篇技术笔记:UDP——相思传得快,飞鸽传书在
笔记·网络协议·tcp/ip·udp·信息与通信
invicinble13 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
wbs_scy14 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
stm32 菜鸟14 小时前
nucleo-f411re学习记录-12,Wifi模块ESP8684
学习
ss27314 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
AI人工智能+电脑小能手14 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法
try2find15 小时前
打印ascii码报错问题
java·linux·前端
014-code15 小时前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库