Java—Map接口

一、Map接口&Collection接口的区别

数据存储形式不同

🔹 Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。

🔹 Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的值。

🔹 Collection中的集合称为单列集合,Map中的集合称为双列集合。

🔹 需要注意的是,Map中的集合不能包含重复的键,值可以重复;每个键只能对应一个值。

🔹 Map中常用的集合为HashMap集合、LinkedHashMap集合。


二、Map接口中的集合

🔖 HashMap<K,V>

 ① 存储数据采用的哈希表结构

 ② 元素的存取顺序不能保证一致

 ③ 由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法

🔖 LinkedHashMap<K,V>

 ① 存储数据采用的哈希表结构+链表结构

 ② 通过链表结构可以保证元素的存取顺序一致

 ③ 通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。

🔖 注意:Map接口中的集合都有两个泛型变量<K,V>在使用时,要为两个泛型变量赋予数据类型。两个泛型变量<K,V>的数据类型可以相同,也可以不同。

三、Map接口中集合的键值对获取

方式一:键找值



方式二:键值对

注:Map集合不能直接使用迭代器或者foreach进行遍历。但是转成Set之后就可以使用了。


四、Collections

① public static void sort(List list) 排序

② public static void shuffle(List list) 集合中的元素存储位置随机打乱

③ public static boolean addAll(Collection<? super T> c, T... elements) 在某个集合中添加所有的元素

posted @ 2020-11-14 14:04  娜豆  阅读(84)  评论(0编辑  收藏  举报