设计模式:11、迭代器模式(游标)

目录

0、定义

1、迭代器模式的四种角色

2、迭代器模式的UML类图

3、示例代码


0、定义

提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。

1、迭代器模式的四种角色

  • 集合(Aggregate):一个接口,规定了具体集合需实现的操作。
  • 具体集合(ConcreteAggregate):具体集合 是实现集合 接口的类的实例,具体集合 按着一定结构存储对象。具体集合 应当有一个方法,该方法返回一个针对该集合的具体迭代器。
  • 迭代器(Iterator):一个接口,规定了遍历具体集合的方法,比如next()方法。
  • 具体迭代器(ConcreteIterator):实现迭代器 接口的类的实例。具体迭代器 在现实迭代器 接口所规定的遍历集合的方法时,比如next()方法,要保证next()方法的首次调用将按着集合 的数据结构找到该集合 中的一个对象,而且每当找到集合中的一个对象,立刻根据该集合 的存储结构得到待遍历的后继对象的引用,并保证依次调用next()方法可以遍历集合。

2、迭代器模式的UML类图

3、示例代码

待设计......

相关推荐
MobotStone6 小时前
AI 写代码越来越爽,但程序员可能越来越废了
人工智能·设计模式
墨子夕8 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(前言篇)
java·开发语言·设计模式
墨子夕10 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(第一篇)
java·python·设计模式
General_G11 小时前
创建型模式—原型(Prototype)模式
c++·设计模式·原型模式
geovindu14 小时前
rust: Template Method Pattern
开发语言·后端·设计模式·rust·行为模式·模板方法模
geovindu16 小时前
rust: Template Method Pattern(续)
开发语言·后端·设计模式·rust·行为模式·板方法模式
博风17 小时前
17、设计模式应用举例:单件模式:多线程争冠军
设计模式
高晶1 天前
无乘法器实现LC二阶滤波器:基于移位运算的快速算法与四种精度推导
算法·设计模式·程序员
高晶1 天前
主从自动分配算法:平均值乘以设备数一半的选举基准值解析
算法·设计模式·程序员
延晗1 天前
【从零开始 DeepSeek Harness 插件开发教程】二、一切皆插件:简单理解一下 Cordis 内核与 DSH 心智模型
设计模式·deepseek