底层都是数组+链表实现

Hashtable:

1、无论是key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个Hashtable,效率低

2、初始size为11,扩容:newsize=oldsize*2+1

Hashmap:

1、可以存储null键和null值,线程不安全

2、初始size为16,扩容:newsize =oldsize*2,size一定为2的n次幂