Collection 和 Collections的区别。

来源:互联网 发布:怎么上传图片到淘宝 编辑:程序博客网 时间:2024/06/01 18:01
Collection 和 Collections的区别。 
集合框架:Collection:List列表,Set集 
Map:Hashtable,HashMap,TreeMap 

Collection  是单列集合

 List 元素是有序的、可重复 

有序的 collection,可以对列表中每个元素的插入位置进行精确地控制。可以根据元素的整数索引(在
列表中的位置)访问元素,并搜索列表中的元素。  可存放重复元素,元素存取是有序的。 
List接口中常用类 
Vector:线程安全,但速度慢,已被ArrayList替代。 
底层数据结构是数组结构 
ArrayList:线程不安全,查询速度快。底层数据结构是数组结构 LinkedList:线程不安全。增删速度快。底层数据结构是列表结构 
Set(集) 元素无序的、不可重复。 
取出元素的方法只有迭代器。不可以存放重复元素,元素存取是无序的。 
Set接口中常用的类 
HashSet:线程不安全,存取速度快。 
  它是如何保证元素唯一性的呢?依赖的是元素的hashCode方法和euqals方法。 
TreeSet:线程不安全,可以对Set集合中的元素进行排序。 
 它的排序是如何进行的呢?通过compareTo或者compare方法中的来保证元素的唯一性。元素是以二叉树的形式存放的。 
Map是一个双列集合 
|--Hashtable:线程安全,速度快。底层是哈希表数据结构。是同步的。 
不允许null作为键,null作为值。 
      |--Properties:用于配置文件的定义和操作,使用频率非常高,同时键和值都是字符串。 是集合中可以和IO技术相结合的对象。(到了IO在学习它的特有和io相关的功能。) |--HashMap:线程不安全,速度慢。底层也是哈希表数据结构。是不同步的。 
允许null作为键,null作为值。替代了Hashtable. 
   |--LinkedHashMap: 可以保证HashMap集合有序。存入的顺序和取出的顺序一致。 |--TreeMap:可以用来对Map集合中的键进行排序.  
Collection 和 Collections的区别  
Collection是集合类的上级接口,子接口主要有Set 和List、Map。  
Collections是针对集合类的一个帮助类,提供了操作集合的工具方法:一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
原创粉丝点击