HashMap和HashTale的区别?HashTable 和ConcurrenHashMap的区别?

首先:HashMap和HashTale的区别?
相同点:HashMap和HashTale都可以用来存储key-value的数据
区别:
(1)HashMap是可以把null作为key或者value的,二HashTable是不可以的
(2)HashMap是线程不安全的,效率较高,二HashTable是线程安全的,效率较低。

怎么实现线程安全又保证高效率呢?
使用ConcurrentHashMap通过把整个Map分为N个Segment(类似HashTable),可以提供相同的线程安全,但是效率提升N倍,默认提升16倍。

你可能感兴趣的:(java)