DESKTOP-RLRCCPP_20200911-牛子良
问题
Hashtable与HashMap的区别;
一、HashMap
(1)java 8之前采用数组链表来存放Entry,在java 8之后开始采用数组、链表、红黑树来存放Entery;
(2)键key值不可重复,键值可以是null;
(3)值value可以重复,可以是null;
(4)扩容:newcapacity=oldCapacity<<1,即当哈希表中的条目数超出了加载因子与当前容量乘积时,则要对该哈希表进行rehash操作,从而哈希表将具有大约两倍的桶数;
(5)不是线程安全的
(6)根据key的哈希值确定Entry的存放位置;
二、Hashtable
(1)键key不可重复;
(2)值value可以重复;
(3)任何非null对象都可以用作键或值;
(4)扩容:当Entry个数超过阈值时就扩容,扩容方式newCapacity=(oldCapacity<<1)+1
(5)是线程安全的
吐槽
安装了个Oracle,电脑卡的不成样了;
点赞