Java持有对象

Java中的容器用途为“存储对象

分为两大类,相较于传统的数组,容器具有容量可自动扩充的优点,且各个容器还具有额外的特性

(1)Collection

List:按照插入顺序保存元素

Set:每个值只保存一次

Queue:按照排队规则来确定对象的产生顺序


添加元素:1.使用Arrays.asList()作为构造器的输入    
                     2.构造器为空,使用Collections.addAll()添加(速度更快)
[API] Collections.addALL(Collection<? super T> c , T.... elements)  

[Description]Adds all of the specified elements to the specified collection.


【注意】Arrays.asList()对于所产生的List类型做了最理想的假设




(2)Map

Map(映射表):存储的是两个对象,成为键值对,允许我们通过“键”来查找“值”,故也称为关联数组或者字典


迭代器(Iterator):将遍历序列的操作与序列底层的数据结构分离

    效果:统一了容器的访问方式

Iterator可以移除由next()产生的最后一个元素,所以在调用remove()之前需要先调用next()

ListIterator是更强大的Iterator的子类,只用于List类型

可以双向移动

可以替换最后一个访问的元素

Set

特点:不保存重复元素,常用于测试归属性,所以查找是set的常用操作,常选用HashSet,专门对快速查询进行了优化


TreeSet使用红-黑树数据结构





猜你喜欢

转载自blog.csdn.net/AntioniaMao/article/details/79548366