Hashtable 和 Hashmap 的区别
1.hashtable底层使用synchronize来进行修饰的,所以它是线程安全的,同步的,又由于它是线程安全的,所以它的效率较低
2.hashmap底层没用synchronize来进行修饰的,所以它是线程不安全的,不同步的,又由于它是不线程安全的,所以它的效率较搞
3.两者都继承与map接口,所以两者的遍历方式大同小异
4.hashtable不允许空值null,而hashmap可以是空值
HashMap 和 ConCurrentHashMap 区别
1.ConcurrentHashMap是采用分段锁机制,所以它是线程安全的,而Hashmap是不是线程安全的
2.ConcurrentHashMap是把整个数据分割成segment,然后每一个segment数据上都有锁,在通过这个segment来操作每一个Entry数据
而HAshMap则不是这样的,它是将数据整个进行操作,且没有进行加锁控制