zoukankan      html  css  js  c++  java
  • Java 设计模式系列(十五)迭代器模式(Iterator)

    Java 设计模式系列(十五)迭代器模式(Iterator)

    迭代器模式又叫游标(Cursor)模式,是对象的行为模式。迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象(internal representation)。

    一、实现自己的迭代器

    public class MyArrayList<T> implements Iterable<T> {
    
        private Object[] elements = {"java", "python", "python"};
        private int size = elements.length;
    
        public Iterator iterator() {
            return new Itr();
        }
    
        private class Itr implements Iterator<T> {
            private int cursor = 0;
    
            @Override
            public boolean hasNext() {
                return cursor < size;
            }
    
            @Override
            public T next() {
                return (T) elements[cursor++];
            }
        }
    
        public static void main(String[] args) {
            MyArrayList<String> list = new MyArrayList();
            for (Iterator it = list.iterator(); it.hasNext();) {
                System.out.println(it.next());
            }
    
            // 必须实现 Iterable 接口
            for (Object str : list) {
                System.out.println(str);
            }
        }
    }
    

    每天用心记录一点点。内容也许不重要,但习惯很重要!

  • 相关阅读:
    经典小故事
    清晨六问
    ui相关书籍
    ui设计书籍推荐
    生成器
    函数之装饰器
    函数之闭包
    函数之作用域的查找顺序
    函数之命名空间/名字空间/名称空间
    内置函数
  • 原文地址:https://www.cnblogs.com/binarylei/p/9016796.html
Copyright © 2011-2022 走看看