Java基础(十九)集合(1)集合中主要接口和实现类

  1.Java集合框架为不同类型的集合定义了大量接口

  其中,集合有两个基本接口:Collection和Map。

  

  

  2.各接口的主要特征如下

  (1)Collection接口:是List接口、Set接口和Queue接口的父接口,通常情况下不能被直接使用。

  (2)List接口:实现了Collection接口,List接口允许存放重复的对象,按照对象的插入顺序排列

  (3)Set接口:实现了Collection接口,Set接口不允许存放重复的对象,按照自身内部的排序规则排列

  (4)Queue接口:实现了Collection接口,Queue接口只允许在队列的尾部添加元素,在队列的头部删除元素,并且可以统计队列中元素的个数。

  (5)Map接口以键值对(Key-Value)的形式存放对象,其中键(key)对象不可以重复,值(Value)对象可以重复,按照自身内部的排序规则排列。

  (6)Iterator接口:定义了访问集合中元素的第一种方式,迭代器访问,必须顺序地访问元素。

  (7)RandomAccess接口:定义了访问集合中元素的第二种方式,使用一个整数索引访问,即随机访问,可以按任意顺序访问元素。

 

  3.实现了各个接口的类

  

   Java中集合的实现类的描述

  • List
  1. ArrayList:可以动态增长和缩减的索引序列
  2. LinkedList:(实现了Queue接口)可以在任何位置进行高效地插入和删除操作的有序序列,即链表序列
  • Set
  1. HashSet:没有重复元素的无序集(--子类LinedHashSet:可以记住元素插入次序的集)
  2. EnumSet:包含枚举类型值的集
  3. TreeSet:有序集
  • Queue
  1. PriorityQueue:允许高效删除最小元素的集合
  2. ArrayDeque:用循环数组实现的双端队列
  • Map
  1. HashMap:存储键/值关联的数据结构(--子类LinkedHashMap:可以记住键/值项添加次序的映射表)
  2. TreeMap:键/值有序排列的映射表
  3. EnumMap:键/值属于枚举类型的映射表
  4. WeakHashMap:其值无用武之地后可以被垃圾回收器回收的映射表
  5. IdentityHashMap:用“==”而不是equals比较键/值的映射表