网站建设公司一般多少钱在线视频2018免费视频
2026/4/9 3:20:09 网站建设 项目流程
网站建设公司一般多少钱,在线视频2018免费视频,建设官方网站需要那些人员,网页设计在邯郸能干什么文章目录1. 引言#xff1a;为什么我们每天都在用迭代器#xff1f;2. 什么是迭代器模式GoF 定义3. 迭代器模式的核心思想4. 迭代器模式的结构5. 示例#xff1a;自定义集合 迭代器5.1 迭代器接口5.2 聚合接口5.3 具体聚合类5.4 客户端使用6. 迭代器模式的优点7. 迭代器模式…文章目录1. 引言为什么我们每天都在用迭代器2. 什么是迭代器模式GoF 定义3. 迭代器模式的核心思想4. 迭代器模式的结构5. 示例自定义集合 迭代器5.1 迭代器接口5.2 聚合接口5.3 具体聚合类5.4 客户端使用6. 迭代器模式的优点7. 迭代器模式的缺点8. 内部迭代 vs 外部迭代外部迭代传统 Iterator内部迭代Stream9. JDK 中的迭代器模式Iterator 接口10. 适用场景11. 一个常见误区12. 迭代器 vs 访问者参考1. 引言为什么我们每天都在用迭代器你在 Java 中几乎每天都会写for(Strings:list){System.out.println(s);}或者IteratorStringitlist.iterator();while(it.hasNext()){System.out.println(it.next());}但你是否想过ArrayList和HashSet底层结构完全不同为什么遍历方式却是统一的答案就是迭代器模式。在不暴露集合内部结构的前提下顺序访问集合元素2. 什么是迭代器模式GoF 定义提供一种方法顺序访问一个聚合对象中的各个元素而不暴露其内部表示。详细解释迭代器模式提供一个对象来顺序访问聚合对象中的一系列数据而不暴露聚合对象的内部表示。一句话理解遍历与集合实现解耦。3. 迭代器模式的核心思想迭代器模式解决了三个问题如何遍历集合不暴露集合内部结构提供统一遍历接口集合负责存储迭代器负责遍历。4. 迭代器模式的结构迭代器模式包含四个角色Iterator迭代器接口定义访问和遍历聚合元素的接口通常包含 hasNext()、next() 等方法。ConcreteIterator具体迭代器实现抽象迭代器接口中所定义的方法完成对聚合对象的遍历记录遍历的当前位置。Aggregate聚合接口定义存储、添加、删除聚合元素以及创建迭代器对象的接口。ConcreteAggregate具体聚合实现抽象聚合类返回一个具体迭代器的实例。5. 示例自定义集合 迭代器5.1 迭代器接口publicinterfaceIteratorE{booleanhasNext();Enext();}5.2 聚合接口publicinterfaceContainerE{IteratorEiterator();}5.3 具体聚合类publicclassNameRepositoryimplementsContainerString{privateString[]names{Alice,Bob,Charlie};OverridepublicIteratorStringiterator(){returnnewNameIterator();}privateclassNameIteratorimplementsIteratorString{privateintindex;OverridepublicbooleanhasNext(){returnindexnames.length;}OverridepublicStringnext(){returnnames[index];}}}5.4 客户端使用NameRepositoryreponewNameRepository();IteratorStringitrepo.iterator();while(it.hasNext()){System.out.println(it.next());}6. 迭代器模式的优点隐藏集合内部结构遍历方式统一支持多种遍历策略符合单一职责原则7. 迭代器模式的缺点增加类数量对简单集合可能显得冗余8. 内部迭代 vs 外部迭代外部迭代传统 Iteratorwhile(it.hasNext()){process(it.next());}内部迭代Streamlist.stream().forEach(this::process);对比方式控制权外部迭代调用者内部迭代集合9. JDK 中的迭代器模式Iterator 接口publicinterfaceIteratorE{booleanhasNext();Enext();}ArrayListHashSetLinkedList都通过 Iterator 统一遍历。10. 适用场景不同集合统一遍历隐藏复杂数据结构提供多种遍历策略11. 一个常见误区迭代器模式不是 for 循环的替代而是“遍历规则的抽象”。12. 迭代器 vs 访问者模式关注点迭代器如何遍历访问者如何操作参考迭代器模式 | 菜鸟教程《图解设计模式》迭代器 - Java教程 - 廖雪峰的官方网站迭代器设计模式

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询