行为型设计模式.迭代器模式

一、概念

1.1、定义

用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。


Iterator.png
  • Container,容器类:定义存储元素对象列表,实现add和remove接口。
  • Iterator,迭代类:元素对象需要间接依赖于容器类对象里列表,同时实现hasNext和next接口。
1.2、解决的问题
  • 问题分析:
    对于集合数据的遍历访问 和 存储过程 不同,存储过程先对固定,而访问遍历确可能变化。

  • 模式的解决思路:
    迭代器模式就是分离了集合对象的遍历行为,抽象出一个迭代器类Iterator来负责,这样既可以做到不暴露集合的内部结构,又可让外部代码透明地访问集合内部的数据。

二、模式的应用和优缺点

2.1、应用场景
  • 实例:
    JAVA 中的 iterator
2.2、优缺点
  • 优点:
    1、易于扩展聚合数据的遍历方式,如正序遍历、倒叙遍历等
    2、数据的存储过程和遍历过程剥离,方便彼此扩展

  • 缺点:
    优点即缺点,数据的存储过程和遍历过程剥离,会导致类的数量增加,增加系统复杂性。

三、其他

迭代器模式

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容