迭代器模式将集合中的遍历操作从集合类中拆分出来, 放到迭代器类中, 让两者的职责更加单一. 迭代器模式的优势 可以封装一些复杂的遍历逻辑, 比如树的各种遍历方式(BFS, DFS, 前序等等) 后期如果需要变更遍历方式, 只需要替换掉迭代器的实现.