JAVA集合
根据使用java的需要,我们有很多时候需要将很多对象集合在一个object中,已达到其能够储存和调用的作用。根据这个需要,我们有了集合,就是把很多我们需要的集合放在一起,方便储存和访问。
因为实际使用中,我们需要将同样类型的对象储存在同一个object中,所以有了 泛型。泛型表示同一个类型的对象的集合。但是有的时候又不止需要一种类型的对象,而是两种或者多种,这个时候有了
关键字
Iterator
实际应用中,常常需要对集合元素进行迭代,Iterator接口提供了迭代集合对象的功能,是一个泛型接口。
Collection
Collection就是集合,是所有集合类的根接口,同时Collection接口是一个泛型接口。有三个子接口:List、Set、Queue。
Map
Map是另外一个顶级接口,用来保存键值对。
Map和Collection的区别就是,Map存的是一对一对的数据,Collection存的是一个一个的数据。Map Key,Value> 这个是Map的格式。其中Key不能相同,相当于地址一样的标志,通过Key可以找到这一对键值。List
List就是列表的意思,它有自己的索引值,所以它的扩展方法和索引有关。它的两个实现类:ArrayList和LinkedList。
Set
Set也是储存数组的,但是它是没有顺序的,而且没有重复的元素(对象),也就是说没有索引(区别于List)。同样有两个实现类:HashSet和TreeSet。
Queue
待续……
Deque
待续……
ArrayList
ArrayList数组列表,数据采用数组方式存储。实际上也是使用最多的集合。
LinkedList
LinkedList链表。存储方式讲究“先进先出”,写入的时候从最后写入,读取的时候从开始读取。
HashSet
HashSet底层是哈希码值,基于HashMap实现的。
TreeSet
TreeSet元素不重复,并且元素实现了排序(通过实现Set的另外的子接口SortedSet接口实现排序)。
HashMap
HashMap通过hashcode对其内容进行快速查找, HashMap中元素的排列顺序是不固定的。
TreeMap
TreeMap中所有的元素都保持着某种固定的顺序,如果需要得到一个有序的Map就应该使用TreeMap。访问其内容经过Key值访问,修改和添加也是通过Key。