[C#]foreachループでDictionary(連想配列)の要素をKeyValuePairのリストに変換するには?

C#

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

foreachループを使ってDictionary(連想配列)の要素をKeyValuePairのリストに変換する方法を紹介します。

スポンサーリンク

方法

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

foreachループを使ってDictionary(連想配列)の要素をKeyValuePairのリストに変換するには、リストのAddメソッドを使います。

まず、リストを用意します。

List<KeyValuePair<TKey, TValue>> items = new List<KeyValuePair<TKey, TValue>>();

Dictionaryをforeachでループします。

foreachのループ処理で、リストからAdd()メソッドを呼び出します。

そして、 Add()メソッドの引数にリストの要素を指定します。

foreach (var item in myDict)
{
    items.Add(item);
}

上記のforeachループは、ループしたDictionary(連想配列)の要素を用意したリストに格納します。

また、ここまでの処理で、Dictionaryの要素がKeyValuePairのリストに変換されます。

使用例

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 },
	    };
	    
	    List<KeyValuePair<string, int>> items = new List<KeyValuePair<string, int>>();
	    
	    foreach (var item in numbers)
	    {
	        items.Add(item);
	    }
	    
	    Console.WriteLine(String.Join(",", items)); //[one, 1],[two, 2],[three, 3],[four, 4],[five, 5]
	}
}

コメント

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