双列集合Map及其子类

双列集合Map及其子类

Map接口是双列集合,它以key-value的方式存在。

特点:键不可以重复,但是值可以重复、无序(存入的顺序与取出来的顺序不同) 没有索引

在这里插入图片描述

子类:HashMap,LinkedHashMap,TreeMap

Map集合常用方法:

public V put(K key, V value) : 添加元素。
public V remove(Object key) : 删除指定元素。
public V get(Object key) 根据key获取value
public Set<K> keySet() : 获取Map集合中所有的键,存储到Set集合中。
public Set<Map.Entry<K,V>> entrySet() : 获取到Map集合中所有的键值对对象的集合(Set集合)public boolean containsKey(Object key) :判断该集合中是否有此键

HashMap:
数据结构:哈希表
特点:键不可以重复,但是值可以重复、无序(存入的顺序与取出来的顺序不同) 没有索引。
是如何保证键唯一的:键需要重写HashCode和equals 判断过程和HashSet一样。

LinkedHashMap:
数据结构:双链表(哈希表+链表)
特点:键不可以重复,但是值可以重复、有序(存入的顺序与取出来的顺序相同) 没有索引。
是如何保证键唯一的:键需要重写HashCode和equals 判断过程和HashSet一样

TreeMap:

数据结构:红黑树
特点:键不可以重复,但是值可以重复,可以按照自然顺序给key排序。
构造:
空参:可以按照自然顺序给key排序。
带参:可以根据传入指定的Compartor进行设置排序规则。
是如何保证键唯一的:键需要重写HashCode和equals 判断过程和HashSet一样

发布了33 篇原创文章 · 获赞 35 · 访问量 1590

猜你喜欢

转载自blog.csdn.net/weixin_45216092/article/details/104946393
今日推荐