Java_集合—Collection和Iterator

  • Post author:
  • Post category:java




集合篇:


Java_Collection_集合


Java_集合—Collection和Iterator


Java_集合—List


Java_集合—Set


Java_集合—Map


Java_集合的工具类—Collections

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

这节就来讲讲

Collection 和 Iterator 接口

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

先来看Collection中有什么方法:


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

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


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

这个remove有什么用呢?我用collection中的remove就好啦,干嘛要用这玩意?你考虑过没有?

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

然后来看看Iterator的具体用法


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

不同的是:


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


这一节就说到这里。



版权声明:本文为Ling912439122原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。