2.11 ConcurrentHashMap 和 Hashtable 的区别
ConcurrentHashMap和Hashtable的区别主要体现在实现线程安全的⽅式上不同。 底层数据结构... » 阅读全文
ConcurrentHashMap和Hashtable的区别主要体现在实现线程安全的⽅式上不同。 底层数据结构... » 阅读全文
主要原因在于并发下的rehash会造成元素之间形成⼀个循环链表。不过,jdk 1.8 后解决了这个问题,但是还... » 阅读全文
为了能让HashMap存取⾼效,尽量较少碰撞,也就是要尽量把数据分配均匀。我们上⾯也讲到了,Hash值的范围是... » 阅读全文
1. JDK1.8 之前 JDK1.8 之前HashMap底层是数组和链表结合在⼀起使⽤也就是链表散列。Has... » 阅读全文
当你把对象加⼊HashSet时,HashSet会先计算对象的hashcode值来判断对象加⼊的位置,同时也会与... » 阅读全文
如果你看过HashSet源码的话就应该知道:HashSet底层就是基于HashMap实现的。HashSet的源... » 阅读全文
线程是否安全:HashMap是⾮线程安全的,HashTable是线程安全的,因为HashTable内部的⽅法基... » 阅读全文
初始容量 ArrayList有多个不同的构造函数,不同的构造函数的初始容量是不同的。快速看一下ArrayLis... » 阅读全文
线程安全:Vector使用了Synchronized来实现线程同步,是线程安全的,而ArrayList是非线程... » 阅读全文
是否保证线程安全:ArrayList和LinkedList都是不同步的,也就是不保证线程安全; 底层数据结构:... » 阅读全文