[C#]foreachでDictionary(連想配列)をループするには?

C#

どうも、ちょげ(@chogetarou)です。

foreachでDictionaryをループする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

foreachでDictionary(連想配列)をループする方法は、3つあります。

キーと値のペア

1つ目は、キーと値のペアでループする方法です。

まず、ループ対象にDictionaryを指定したforeachのループを記述します。

そして、foreachの{}内にループ処理を記述します。

ループ処理内では、foreachの変数のKeyプロパティでDictionaryの要素のキー、変数のValueプロパティでDictionaryの要素の値を取得します。

foreach (var item in numbers)
{
     //item.Keyで要素のキーを取得
     //item.Valueで要素の値を取得
}

使用例

using System;
using System.Collections.Generic;
public class Example
{
    public static void Main()
    {
	    Dictionary<string, int> numbers = new Dictionary<string, int>()
	    {
	        { "one", 1 },
	        { "two", 2 },
	        { "three", 3 },
	        { "four", 4 },
	        { "five", 5 },
	    };
	    
	    foreach (var item in numbers)
	    {
	        Console.WriteLine("キー「{0}」の 値は「{1}」", item.Key, item.Value);
	    }
	}
}

キーのみ

2つ目は、キーのみでループする方法です。

まず、ループ対象にDictionaryのKeysプロパティを指定したforeachを記述します。

そして、foreachの{}内にループ処理を記述します。

{}内では、foreachの変数でDictionaryのキーを取得できます。

foreach (var key in dict.Keys)
{
    //ループ処理
    //keyでDictionaryのキーを取得
}

使用例

using System;
using System.Collections.Generic;
public class Example
{
    public static void Main()
    {
	    Dictionary<string, int> numbers = new Dictionary<string, int>()
	    {
	        { "one", 1 },
	        { "two", 2 },
	        { "three", 3 },
	        { "four", 4 },
	        { "five", 5 },
	    };
	    
	    foreach (var key in numbers.Keys)
	    {
	        Console.WriteLine(key);
	    }
	}
}

値のみ

3つ目は、値のみをループする方法です。

まず、ループ対象にDictionaryのValuesプロパティを指定したforeachを記述します。

そして、foreachの{}内にループ処理を記述します。

{}内では、foreachの変数でDictionaryの値を取得できます。

foreach (var value in dict.Values)
{
    //ループ処理
    //valueでDictionaryの値を取得
}

使用例

using System;
using System.Collections.Generic;
public class Example
{
    public static void Main()
    {
	    Dictionary<string, int> numbers = new Dictionary<string, int>()
	    {
	        { "one", 1 },
	        { "two", 2 },
	        { "three", 3 },
	        { "four", 4 },
	        { "five", 5 },
	    };
	    
	    foreach (var value in numbers.Values)
	    {
	        Console.WriteLine(value);
	    }
	}
}

まとめ

foreachでDictionary(連想配列)をループする方法は、次の3つです。

  • キーと値のペアをループする方法
  • キーのみをループする方法
  • 値のみをループする方法

コメント

タイトルとURLをコピーしました