Java里的集合--主要区别

  Collection 集合接口,指的是 java.util.Collection接口,是 Set、List 和 Queue 接口的超类接口。

List:

  List是关注事物索引的列表。

  List中可以有重复元素。

  List中可以有null值。

  List用来存放同一类型的数据,只能一个一个存放,不能存放键值对。

  List是有顺序的存储。

  List主要用到Vector,ArrayList,LinkedList

  Vector:是基于array的List,在array的基础上添加了一些功能,是线程安全的

  ArrayList:是基于array的List,非线程安全的

  LinkedList:不是基于array的List相当于C++中的链表,它每一个节点都包含两方面的内容:1.节点本身的数据;2.下一个节点的信息。所以当对LinkedList做添加,删除动作的时候就不用像基于Array的List一样,必须进行大量的数据移动。

  因此vector ArrayList适用于查询,Linkedlist适用于添加删除

set:

  set实现基础是map。

  set存储键值对格式数据。

  set不允许重复。

  set主要用到HashSet,LinkedHashSet,TreeSet。

  HashSet:无顺序。

  LinkedHashSet:HashSet的子类,是一个链表,插入顺序排列。

  TreeSet:自然顺序排列。

Queue:

  Queue用于保存将要执行的任务列表。

  LinkedList 同样实现了Queue接口,可以实现先进先出的队列。

  PriorityQueue 用来创建自然排序的优先级队列。

 

posted @ 2017-08-29 09:02  低谷还能再向下  阅读(283)  评论(0编辑  收藏  举报