美文网首页
Android 设计模式入门到精通之十六:迭代器模式(Itera

Android 设计模式入门到精通之十六:迭代器模式(Itera

作者: 编程家园 | 来源:发表于2020-02-04 11:23 被阅读0次

    迭代器模式(Iterator Pattern)

    1. 概念

    Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation.

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

    2. 应用场景 --自行实现可遍历容器时,需要implements Iterator

    对象容器的遍历场景。

    3. 优点

    a. 让客户遍历你的对象,而又无法窥视你存储对象的方式;

    b. Iterator封装“遍历集合内每个对象的过程”;--将遍历的任务放在迭代器上,而不是集合上;简化了集合的接口和实现,也让责任各得其所(单一职责原则 > 高内聚)

    c. 每种ConcreteAggregate集合的内部实现可能不同,但遍历方法都统一起来了,方便客户端代码。--客户端代码与集合实现类解耦。

    4. 注意事项

    尽量不要自己写迭代器模式。使用Java提供的Iterator一般就足够了。

    5. 代码实践:

    JDK: 

    • java.util.Iterator

    • java.util.Enumeration

    Android: 迭代器使用规则:

    • 自行实现可遍历容器时,建议只implements Iterator(实现Collection则代码逻辑较复杂)

    • 使用Java内置容器时,建议针对Collection接口编程

    相关文章

      网友评论

          本文标题:Android 设计模式入门到精通之十六:迭代器模式(Itera

          本文链接:https://www.haomeiwen.com/subject/fvqrxhtx.html