1. 双列集合特点

2. Map
2.1 常用方法




2.2 遍历方式
键找值

键值对

Lambda表达式



底层:

forEach 其实就是利用第二种方法进行遍历,依次得到每一个键和值,再调用 accept 方法。
3. HashMap


3.1 底层原理


HashMap 保证键的唯一性,同一位置新插入 entry 的键一样,value 不一样,把旧的 value 覆盖掉。键不一样,JDK8以后,则把新的 entry 挂在旧的下面,达到一定条件会变成红黑树。
3.2 总结

3.3 源码
4. LinkedHashMap


键一样时,值也会被覆盖,但是能保证存取顺序一致。

5. TreeMap



该图缺失的字 "两面性" :

