コンピュータクワガタ

かっぱのかっぱによるコンピュータ関連のサイトです

C#の学習 No. 7 コレクション

あんまり簡単に書くとおこられるかもしれないけど、ざっくり書くと

  • IListを実装しているのがJavaのListと同様
  • IDictionaryを実装しているのがJavaのMapと同様

と考えればいいかな。

using System.Collections.Generic;

namespace Sample
{
    class CollectionTest
    {
        static void Main(string[] args)
        {
            List<int> list = new List<int>();
            for (int i = 0; i < 10; i++)
            {
                list.Add(i * i);
            }
            for (int i = 0; i < list.Count; i++)
            {
                // インデクサがあるからアクセスが簡単。
                System.Console.WriteLine("list[{0}]={1}", i , list[i]);
            }

            Dictionary<string, string> dic = new Dictionary<string, string>();
            dic.Add("3", "中島");
            dic.Add("60", "中村");
            dic.Add("18", "涌井");

            string sebango = "3";
            System.Console.WriteLine("背番号 {0} は {1}", sebango, dic[sebango]);
            sebango = "18";
            System.Console.WriteLine("背番号 {0} は {1}", sebango, dic[sebango]);
            sebango = "60";
            System.Console.WriteLine("背番号 {0} は {1}", sebango, dic[sebango]);
        }
    }
}

Dictionaryもインデクサでアクセスできるのが新鮮。
他にも、QueueやStackなんかがある。