Collection和Collections的区别

1.Collection:是一个集合接口,子类有List和Set的集合

2.Collections:是一个帮助类,包含各种集合有关的静态多态方法,此类不能实例化,静态方法实现对各种集合的搜索、排序和线程安全化

List:元素是有序的,可重复的

  1.        ArrayList:线程不安全的,底层是数组,查询效率较高
  2.        LinkedList:线程线程不安全的,底层是双向链表,增删效率较高
  3.        vector:线程安全的,底层是数组,效率较低              

 

Set:无序的,不可重复的

HashSet:线程不安全的,效率较高,存储速度较快,存储是利用hashcode和equals

TreeSet:线程不安全的,效率较高,可以对Set集合中的元素进行排序

    通过compareTo进行去重复,保证唯一性,元素是以二叉树的方式

Map:是一个双列集合

HashMap:线程不安全的,效率高,底层是哈希表数据结构,是不同步的

HashTable:线程安全,效率较低,速度快,底层是哈希表数据结构,是同步的。

LinkedHashMap:可以保存HashMap集合有序,存入的顺序和取出的顺序一致

TreeMap:可以对Map的键进行排序

Collection和Collections的区别