1、Collection、map、list它们都是接口;
2、Map是一种把键对象和值对象进行映射的集合,它的每一个元素都包含一对键对象和值对象。TreeMap 和 HashMap 是Map的实现类,其中TreeMap 有序,HashMap 无序;还有你的 Map map=new HashMap<>(); 是不成立的,只能是 Map ms = new HashMap();
另外:HashMap是非线程安全的,HashTable是线程安全的;但如果要进行多线程编程,请用java.util.concurrent.ConcurrentHashMap
3、 List继承自Collection接口。List是一种有序集合,List中的元素可以根据索引(顺序号:元素在集合中处于的位置信息)进行取得/删除/插入操作。 list的元素可以重复; ArrayList 是list的一个实现类;
4、Collection: Collection接口有两个子接口:List(链表|线性表)和Set(集,元素不能重复) ,Collection的实例化可有: Collection c = new ArrayList();Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,JavaSDK提供的类都是继承自Collection的“子接口”如List和Set
5、 常用集合类的继承结构如下:
Collection
Collection
Collection
Collection
Collection
Collection
Map
Map
大多数情况下用: List list = new ArrayList();
或者 List list = new ArrayList(); 其中User是你定义的类。