千锋教育Java入门全套视频教程(java核心技术,适合java零基础,Java

迭代器设计模式与Collection的迭代器
迭代器(Iterator)模式的定义:提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。迭代器模式是一种对象行为型模式。其优点如下:
1、访问一个聚合体无需暴露内部对象结构细节
2、遍历任务交给了迭代器,减轻了本类的任务
3、以接口的形式的出现,更好的适配了不同数据结构的聚合体
4、并且可以继承接口,自定义新的迭代器
Collection(单列集合)也采用了迭代器的设计模式,尽管Collection下的各种集合底层实现不今相同,也能根据各自的特点设计出相应的迭代器。
基础迭代器:iterator 只有三个抽象方法 hasNext();用来判断集合中是否还有元素。next();用来获取下一个元素的。remove();用来删除当前位置的元素,是接口中的默认方法,但默认是抛出异常,是否可删除,需要实现类重写该方法。
List集合特有的迭代器:listIterator(); 该迭代器接口继承了iterator接口,并且添加许多新方法和构造方法,相比iterator,功能更多例如:从给定下标进行遍历,倒序遍历,遍历的时候增加、修改元素……
除此,集合的遍历还有stream流,增强for循环(也是迭代器实现,不过写法更加简洁),foreach()方法等等,多种多样的遍历模式,也使得集合使用起来非常便捷,功能也多种多样。