java--collection和Iterator
2012-03-16 23:15
246 查看
集合类
数组与集合的区别:
数组 集合 存储对象
数据多了对象存,对象多了用集合存
数组固定长度,集合可变长度
数组统一类型,集合对象类型可以不同
collection
接口
List arrayList LinkList Vector
Set HashSet TreeSet
每种容器的数据结构不同
接口没有构造方法,只有普通方法
Collection
Collection接口是Set接口和List接口的超类,所以Collection的特性都适用于Set和List接口,而Set和List接口在Collection的基础上。增加了新的特性和方法。下面是Collection接口的通用方法:
1.增加
Boolean add(Object) 集合中加入一个对象,成功时返回true
Boolean addAll(Collection) 集合中加入另外一个集合对象
2.判断
int size() 集合内容纳元素的数量
boolean isEmpty() 集合是否为空
boolean contain(Object) 集合内是否有参数对象
Boolean containsAll(Collection) 判断集合内是否包含子集
3.删除
Boolean remove(Object) 从集合中删除对象
Boolean removeAll(Collection) 清空指定集合
Boolean retainAll(Collection) 删除子集合不包含的元素
Void clear() 清空集合
集合中存放的是地址
4.其他
Iterator iterator() 产生一个迭代器
Object[] toArray() 返回一个包含所有元素的对象数组
Object[] toArray(Object[]) 把所有元素放入对象数组中
迭代器:
在每一个对象里面都有一个类都实现了Iterator接口
取出的动作封装成了对象,每个容器里面都有一个取出的对象,取出这个类定义了集合的内部,即Iterator是内部类,内部类完成了取出动作,每个容器都有,把取出方式定义在了集合的内部,取出方式可以直接访问类内部元素,而每一个容器的数据结构不同,所以取出的动作细节不同,但是都有共性内容即:判断,取出。
那么这些内部类,都符合一个规则,该规则是Iterator。如何获取取出的对象呢,通过一个对外提供的方法即 Iterator()方法。
列表迭代器
在迭代过程中准备添加或者删除元素
Iterator it = al.iterator();
while(it.hasNext())
{
object obj = it.next();
if(obj.equals(“”)
a1.add();
}
集合和迭代器不能同时使用
List集合特有的迭代器是Iterator的子接口
在迭代时不可以通过集合对象的方法操作集合中的元素,会发生并发修改异常
所以,在迭代时,只能用迭代器方法操作元素,可是Iterator方法是有限的,只能查看删除,如果要实现其他操作,如修改等,该接口只能通
过
数组与集合的区别:
数组 集合 存储对象
数据多了对象存,对象多了用集合存
数组固定长度,集合可变长度
数组统一类型,集合对象类型可以不同
collection
接口
List arrayList LinkList Vector
Set HashSet TreeSet
每种容器的数据结构不同
接口没有构造方法,只有普通方法
Collection
Collection接口是Set接口和List接口的超类,所以Collection的特性都适用于Set和List接口,而Set和List接口在Collection的基础上。增加了新的特性和方法。下面是Collection接口的通用方法:
1.增加
Boolean add(Object) 集合中加入一个对象,成功时返回true
Boolean addAll(Collection) 集合中加入另外一个集合对象
2.判断
int size() 集合内容纳元素的数量
boolean isEmpty() 集合是否为空
boolean contain(Object) 集合内是否有参数对象
Boolean containsAll(Collection) 判断集合内是否包含子集
3.删除
Boolean remove(Object) 从集合中删除对象
Boolean removeAll(Collection) 清空指定集合
Boolean retainAll(Collection) 删除子集合不包含的元素
Void clear() 清空集合
集合中存放的是地址
4.其他
Iterator iterator() 产生一个迭代器
Object[] toArray() 返回一个包含所有元素的对象数组
Object[] toArray(Object[]) 把所有元素放入对象数组中
迭代器:
在每一个对象里面都有一个类都实现了Iterator接口
取出的动作封装成了对象,每个容器里面都有一个取出的对象,取出这个类定义了集合的内部,即Iterator是内部类,内部类完成了取出动作,每个容器都有,把取出方式定义在了集合的内部,取出方式可以直接访问类内部元素,而每一个容器的数据结构不同,所以取出的动作细节不同,但是都有共性内容即:判断,取出。
那么这些内部类,都符合一个规则,该规则是Iterator。如何获取取出的对象呢,通过一个对外提供的方法即 Iterator()方法。
列表迭代器
在迭代过程中准备添加或者删除元素
Iterator it = al.iterator();
while(it.hasNext())
{
object obj = it.next();
if(obj.equals(“”)
a1.add();
}
集合和迭代器不能同时使用
List集合特有的迭代器是Iterator的子接口
在迭代时不可以通过集合对象的方法操作集合中的元素,会发生并发修改异常
所以,在迭代时,只能用迭代器方法操作元素,可是Iterator方法是有限的,只能查看删除,如果要实现其他操作,如修改等,该接口只能通
过
相关文章推荐
- Java中Collection和Iterator接口
- 【java随记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与LinkedHashSet类))
- Java容器深入浅出之Collection与Iterator接口
- Java中容器[Collection(List,Set,Queue),Map],迭代器(Iterator)和比较器(Comparator)及列表排序
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- Java_容器_Collection_Iterator接口
- 黑马程序员-Java基础,Java集合Collection和Iterator接口
- Java-Collection源码分析(二)——Iterator和ListIterator
- Java中的集合Collection、Iterator和Foreach用法(一)
- Java学习第十五天之Collection、Iterator、List
- 几个JAVA集合中常用的接口学习:Collection、Iterator和Map
- Java集合概述集Collection 和 Iterator 接口用法详解
- Java容器Collection与迭代器Iterator
- JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- java-collection的 iterator 返回的迭代器快速失败
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 黑马程序员:Java基础总结----接口 Collection<E>&iterator
- Java Collection Iterable Iterator