深入理解Java8之后的HashMap
HashMap的存储结构如图:一个桶(bucket)上的节点多于8个则存储结构是红黑树,小于8个是单向链表。
jdk8之前一直是链表,链表查询的复杂度是O(n)而红黑树由于其自身的特点,查询的复杂度是O(log(n))。如果hash的结果不均匀会极大影响操作的复杂度。
深入理解Java8之后的HashMap
HashMap的存储结构如图:一个桶(bucket)上的节点多于8个则存储结构是红黑树,小于8个是单向链表。
jdk8之前一直是链表,链表查询的复杂度是O(n)而红黑树由于其自身的特点,查询的复杂度是O(log(n))。如果hash的结果不均匀会极大影响操作的复杂度。