设计模式——Iterator迭代器
描述:
迭代器模式提供了一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。 把游走的任务放在迭代器上,而不是聚合上。这样简化了聚合的接口和实现,也让任务各得其所。
以下程序模拟Java集合中迭代器的实现。
迭代器类图:
由于ArrayList和LinkedList都是集合类型,所以可以抽象出Connection接口,这样在使用到集合的时候就可以创建Connection的引用,而具体的实现是交给具体的集合类去实现。从而实现了多态。同样为了给集合类型提供迭代器,可以抽象出Iterator接口。在Connection接口中创建得到迭代器的方法。
首先创建Iterator接口:
建立Connection接口:
编写ArrayList实现类:
编写LinkedList的实现类:
为了测试方便,编写一个Cat类:
最后是测试类:
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步