文章目录

需求

设计模式(23) -- 迭代器模式_迭代器

传统模式

设计模式(23) -- 迭代器模式_设计模式_02


设计模式(23) -- 迭代器模式_类图_03

迭代器

基本介绍

设计模式(23) -- 迭代器模式_迭代器模式_04

类图

设计模式(23) -- 迭代器模式_迭代器模式_05


对原理

类 图的说明 即 迭代器模 式的角色及职 责

1)Iterator 迭代器接口,是系统提供,含义 hasNext, next, remove

2)ConcreteIterator : 具体的迭代器类,管理迭代

3)Aggregate : 一个统一的聚合接口, 将客户端和具体聚合解耦

迭代器模式应用实例

类图

设计模式(23) -- 迭代器模式_迭代器模式_06

代码:

Department

设计模式(23) -- 迭代器模式_迭代器模式_07


College

设计模式(23) -- 迭代器模式_迭代器_08


ComputerCollege

设计模式(23) -- 迭代器模式_类图_09


ComputerCollegeIterator

设计模式(23) -- 迭代器模式_类图_10


InfoCollege

设计模式(23) -- 迭代器模式_迭代器模式_11


InfoColleageIterator

设计模式(23) -- 迭代器模式_类图_12


OutPutImpl

设计模式(23) -- 迭代器模式_迭代器_13


Client

设计模式(23) -- 迭代器模式_类图_14


运行结果:

设计模式(23) -- 迭代器模式_迭代器_15

迭代器模式在 JDK ArrayList 集合应用的源码分析

设计模式(23) -- 迭代器模式_类图_16


设计模式(23) -- 迭代器模式_迭代器模式_17

迭代器模式的注意事项和细节

设计模式(23) -- 迭代器模式_迭代器模式_18