在java中集合中迭代是怎么一回事儿?为什么要进行集合的迭代

2024-08-25 13:01:33 浏览

其实严格来说,迭代是一种设计模式,迭代的目的是遍历某一类数据集合的内容,而无需了解该类数据的数据结构。

在java中集合中迭代是怎么一回事儿?为什么

也就是说,迭代本没有编程语言属性,只不过几乎所有的编程语言都会支持迭代罢了。

在Java中遍历集合可以不用迭代方式,当然,不用迭代方式的遍历仅限于List接口的实现类。因为List接口规定可以通过集合索引来取得对应的值,不论这个List用的是数组还是链表实现。

但是,Java中的集合不仅仅只有List,还有Set。像这种非List集合是无法通过索引来获取指定元素的,所以这时候迭代方式就排上了用场。

除了List和Set之外,Java还有一种双列集合,又称key-value键值对集合。只不过这种集合遍历时无法直接通过迭代方式遍历。而是通过折中方式,要么先获得key值集合,通过遍历key来遍历map,要么是获得Map.Entry的集合来遍历。

总之,迭代方式不属于任何编程语言,它只是一种设计思想,只不过大多数编程语言会去实现它罢了,包括Java。

迭代可以遍历并选择集合中的每个对象而不改变集合的结构,比如你访问集合的时候用集合自带的remove()方法去除集合的元素,这样会是使集合的Size()改变,循环的时候会出错;而把集合放入迭代器,用迭代器的remove()就不会出现问题

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。