List:单列元素的集合,允许储存重复值,有序的。
Set:单列元素的集合,不允许存重复值,内部排序,无序的。
Map:双列元素的集合,不允许key为空。
Array集合可以包含基本类型和对象类型,ArrayList只能包含对象类型
Array大小是固定的而ArrayList大小是动态变化的。
ArrayList:基于数组,善于查询,不允许有重复值,线程不安全
LinkedList:线程不安全,基于链表,善于添加删除,内存占用要比ArrayList大,为每一个节点储存了两个引用一个指向前一个元素,一个指向后一个元素。
HashMap:线程不安全的,适合单线程环境下使用,允许key或者value为空值。
HashTable:不允许key或者value为空值,线程安全的,遗留下来的类是java1.2时引进map接口实现的一个类。
HashMap和HashTable区别:都实现了map接口,HashMap是HashTable的轻量级实现,HashMap是线程不安全的,而且允许Key或者value为空。