HashMap是Hashtable的轻量级实现,二者均实现了Map借口,主要有以下三点区别。

      (1)Hashtable直接继承自Dictionary抽象类,其实现原理也是基于Dictionary类的;而HashMap则是JDK1.2引进的Map接口的一个具体实现类。

      (3)Hashtable不允许将null作为一个entry的key或value,但HashMap允许。

      ArrayList是基于动态数组的数据结构,而LinkedList基于链表。

      此外,ArrayList和LinkedList都是线程不安全的。

      List接口和Set接口有共同的父类:Collection接口;而Map本身就是一个顶级接口。