相同点: HashMap 和 HashTable都可以是用来存储key-value的数据。 区别: 1、HashMap是可以把null作为key或者value的,而HashTable是不可以的。 2、HashMap是线程不安全的,效率较高。而HashTable是线程安全的的,效率较低。 我想线程安全但是我又想效率高? 通过把整个Map分为N个Segment(类似HashTable),可以提供相同的线程安全,但是效率提升N倍,默认提升16倍。