2010年1月9日土曜日

System.Collections.Generic Name SpaceのQueue Classをインスタンス化してqueueを定義し、Enqueue(object),Contains(object),Count,Dequeue,Peek()メンバーを使用して、要素を追加したり削除したり、foreachループで出力したり等してみる。

using System;
using System.Collections.Generic;


class MainClass
{
    static void Main()
    {
        var queue = new Queue<int>();


        // queueに要素を追加していく
        for (int i = 0; i < 10; i++)
        {
            queue.Enqueue(i);
        }
        /* Queue Classが先入れ先出し
         * (First In First Out)である
         * ことを確認
         * 出力値:0 1 2 3 4 5 6 7 8 9 */
        foreach (var n in queue)
        {
            Console.Write("{0} ", n);
        }
        // 改行
        Console.WriteLine();


        /* queueに5,10がそれぞれ含まれているか確認
         * 出力値:True False */
        Console.WriteLine
            ("{0} {1}",
            queue.Contains(5),queue.Contains(10));
        /* queueに含まれる要素数を出力
         * 出力値:10 */
        Console.WriteLine(queue.Count);


        /* 先頭の要素を取得、出力して削除
         * 出力値:0 */
        Console.WriteLine(queue.Dequeue());


        /* 削除されていることを確認
         * 出力値:1 2 3 4 5 6 7 8 9 */
        foreach (var n in queue)
        {
            Console.Write("{0} ", n);
        }
        Console.WriteLine();


        /* 先頭の要素を取得、出力
         * 出力値:1 */
        Console.WriteLine(queue.Peek());


        /* 削除されていないことを確認
         * 出力値:1 2 3 4 5 6 7 8 9 */
        foreach(var n in queue)
        {
            Console.Write("{0} ",n);
        }
        Console.WriteLine();
    }
}

0 コメント:

コメントを投稿