コード例 #1
0
ファイル: Client.cs プロジェクト: alejandroX86/Iterator
 public Client()
 {
     _iterator = new ConcreteIterator(_aggregate);
     _iterator.First();
     _iterator.Siguiente();
     _iterator.Current();
     _iterator.IsDone();
 }
コード例 #2
0
        private static void ClearImplementationDemo()
        {
            var aggregate = new ConcreteAggregate();
            aggregate[0] = "Item A";
            aggregate[1] = "Item B";
            aggregate[2] = "Item C";
            aggregate[3] = "Item D";

            IIterator iterator = new ConcreteIterator(aggregate);

            Console.WriteLine("Iterating over collection:");

            while (!iterator.IsDone())
            {
                Console.WriteLine(iterator.CurrentItem());
                iterator.Next();
            }
        }
コード例 #3
0
ファイル: Test.cs プロジェクト: April-wind/Design-Pattern
    // Start is called before the first frame update
    void Start()
    {
        ConcreteAggregate a = new ConcreteAggregate();

        a[0] = "大鸟";
        a[1] = "小菜";
        a[2] = "行李";

        Iterator i = new ConcreteIterator(a);

        object item = i.First();

        while (!i.IsDone())
        {
            Debug.Log(i.CurrentItem() + "来了");
            i.Next();
        }
    }
コード例 #4
0
ファイル: Program.cs プロジェクト: striveCj/StudyCode
        public static void IteratorPattern()
        {
            ConcreteAggregate a = new ConcreteAggregate();

            a[0] = "张三";
            a[1] = "李四";
            a[2] = "王五";
            a[3] = "赵六";
            ConcreteIterator i    = new ConcreteIterator(a);
            object           item = i.First();

            while (!i.IsDone())
            {
                Console.WriteLine($"{i.CurrentItem()}请先买票");
                i.Next();
            }
            Console.Read();
        }
コード例 #5
0
ファイル: Iterator.cs プロジェクト: Plugarov/Telerik-Repo
        private static void ClearImplementationDemo()
        {
            var aggregate = new ConcreteAggregate();

            aggregate[0] = "Item A";
            aggregate[1] = "Item B";
            aggregate[2] = "Item C";
            aggregate[3] = "Item D";

            // Create Iterator and provide aggregate
            IIterator iterator = new ConcreteIterator(aggregate);

            Console.WriteLine("Iterating over collection:");

            while (!iterator.IsDone())
            {
                Console.WriteLine(iterator.CurrentItem());
                iterator.Next();
            }
        }
コード例 #6
0
        //迭代器
        public static void testIterator()
        {
            ConcreteAggregate a = new ConcreteAggregate();

            a[0] = "大鸟";
            a[1] = "小菜";
            a[2] = "行李";
            a[3] = "老外";
            a[4] = "公交内部员工";
            a[5] = "小偷";

            Iterator i = new ConcreteIterator(a);
            //Iterator i = new ConcreteIteratorDesc(a);
            object item = i.First();

            while (!i.IsDone())
            {
                Console.WriteLine("{0} 请买车票!", i.CurrentItem());
                i.Next();
            }

            Console.Read();
        }