Map集合和Map常用的子类
Map集合概述
将键映射到值对象 一个映射不能包含重复的键 每个键最多只能映射到一个值
现实生活中 我们常会看到这样的一种集合:IP地址与主机名 身份证号与个人 系统用户名与系统用户对象等
这种—对应的关系就 叫做映射 java通过了专门的集合类用来存放这种对象关系的对象 就是Map接口 它是隶属于java.util包下
Collection中的集合,元素是孤立存储的(可以理解为单身) 向集合中存储元素采用一个个元素的方式存储
Map中的集合 元素是成对存在的(可以理解为夫妻)每个元素由键和值两个部分组成 通过键可以找对应的值
Collection中的集合称为单列集合 Map中的集合称为双列集合
需要注意:Map中的集合不能包含重复键 值可以重复 每个键只能对应一个值
Map集合的特点
1.Map集合是一个双列集合,一个元素包含两个值(一个key,一个value)
2.Map集合中的元素 key和value的数据类型可以相同 也可以不同
3.Map集合中的元素 key是不允许重复的 value也可以重复的
4.Map集合中的元素 key和value是一一对应
Map常用的子类
1.HashMap基于哈希表的Map接口的实现 此类不能保证映射的顺序 特别是它不能保证顺序恒久不变
HashMap集合的特点:
1.HashMap集合底层是哈希表:查询的速度特别特别的快
JDK1.8之前:数组+单向链表
JDK1.8之前:数组+单向链表/红黑树(链表的长度超过8):提高查询的速度
2.hashMap集合是一个无序的集合 存储元素和取出元素的顺序有可能吧一致
它的子类是LinkedHashMap
LinkedHashMap的特点
1.LinkedHashMap集合底层是哈希表+链表
2.LinkedHashMap集合是一个有序的集合 存储元素和取出元素的顺序是一致的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix