Map的实现:Map提供的方法:HashMap:HashMap的特点:HashMap的put过程:HashMap的底层实现: Map的实现: HashMap:依赖hashCode()和equals()排序的Map;LinkedHashMap:解决HashMap存取顺序不能保存一致的问题。 Map提供的方法:🐵 #面试 #AnS map.keySet():返回一个包含键(key)的集合,可以提供遍历这个集合获得key; map.put(key ,value);map.get(key):返回key对应的value; HashMap: HashMap的特点: 存储数据采用的哈希表结构,所以,元素的存取顺序不能保证一致;键(key)唯一、不重复;线程不安全。 HashMap的put过程: 首次扩容(数组初始为16);计算索引,通过hashCode确定位置;插入数据: 如果当前位置元素为空,则直接插入;如果当前位置元素不为空,且key已经存在,则覆盖其value;如果当前位置 元素不为空,且 key不存在,那么将新元素链接到当前位置的链表末端(拉链法解决冲突);若链表长度达到8,则将 链表 转换成 红黑树,并将数据插入树中; HashMap的底层实现: Jdk8:散列数组-拉链法-红黑树(链表长度大于8时)