HashMap集合的底层原理
实际上:原来学的Set系列集合的底层就是基于Map实现的,只是Set集合中的元素只要键数据,不要值数据。
哈希表:
JDK8之前,哈希表 = 数组 + 链表;
JDK8开始,哈希表 = 数组 + 链表 +红黑树;
哈希表是一种增删改查数据,性能都比较好的数据结构。
LinkedHashMap的底层原理
实际上:原来提到的LinkedHashSet集合的底层原理就是LinkedHashMap。
底层依然基于哈希表实现的,只是每一个键值对元素又额外的多了一个双链表的机制记录元素顺序(保证有序)
TreeMap的使用
特点:不重复、无索引、可排序(按照键的大小默认升序排序,只能对键排序)
原理:Tree Map跟TreeSet集合的底层原理是一样的,都是基于红黑树实现的排序。