Example #1
0
        static void Main(string[] args)
        {
            var shelf = new BookShelf();

            for (int i = 0; i < 10; i++)
            {
                shelf.AppendBook(new Book("name" + i));
            }

            var iter = shelf.Iterator();

            while (iter.HasNext())
            {
                Console.WriteLine(iter.Next().Name);
            }
        }
Example #2
0
        /// <summary>
        /// イテレータパターン実行
        /// </summary>
        public static void Run()
        {
            BookShelf bookShelf = new BookShelf(); //本棚obj生成

            // 本を追加していく
            bookShelf.appendBook(new Book("エロ本"));
            bookShelf.appendBook(new Book("技術書"));
            bookShelf.appendBook(new Book("マンガ"));

            // この本棚を参照するイテレータを生成する
            IIterator it = bookShelf.Iterator();

            // 要素がなくなるまで繰り返し
            while (it.HasNext())
            {
                Book book = (Book)it.Next();
                Console.WriteLine(book.Name);
            }
        }