Java_集合—Collection和Iterator

集合篇:

Java_Collection_集合

Java_集合—Collection和Iterator

Java_集合—List

Java_集合—Set

Java_集合—Map

Java_集合的工具类—Collections


从集合的体系图上我们可以看到,List 和  Set 集合都是继承自 Collection 的,由此可以看出。Collection是除Map集合以外所有集合的祖宗。由此可见它的重要性。集合,有别于其他容器类,集合有自己特殊的遍历方式,就是使用 Iterator(迭代器)去遍历集合。可见,Iterator 也是在集合中是很重要的。

这节就来讲讲Collection 和 Iterator 接口

既然两个都是接口,接口既不能new对象,里面定义的方法也是空的,所以没什么好讲的,就来讲讲这两个集合中的方法有什么作用以及使用;

先来看Collection中有什么方法:

Java_集合—Collection和Iterator_第1张图片

Collection下面的子类常用的方法就有这些。代码中注释写的比较明白,不必要过多的解释了。


下面来说说Iterator,Iterator就比较简单了,看代码

Java_集合—Collection和Iterator_第2张图片

一眼看上去,也就3个,没错,就是3个,其中最常用的的

这个remove有什么用呢?我用collection中的remove就好啦,干嘛要用这玩意?你考虑过没有?
这就涉及到安全性的问题了,如果你同时对一个几个遍历和删除的操作,删除了之后是不是集合的元素就少了,但你的Iterator是在删除之前获取的啊,删除前后使用同一个迭代器,你觉得不会出问题么?尽管可以去试试。正是因为这个安全性的问题,所以这里的在遍历集合的时候要删除元素一定要用iterator俩面的remove,而不是用collection里面的remove。

然后来看看Iterator的具体用法

Java_集合—Collection和Iterator_第3张图片

上面这两种使用方式,从功能上来讲。是没什么区别的,都实现了对集合的遍历

不同的是:方式一执行完毕后Iterator对象还是存在于内存中的,而方式二是不存在的,这就涉及到了局部变量和全局变量的区别了


这一节就说到这里。





你可能感兴趣的:(Java_集合—Collection和Iterator)