#author("2020-05-14T09:17:56+09:00","","") #navi(../) * 連想配列(ハッシュ)のキーと値を取得する・Dictionary, KeyValuePair [#h10a90e3] Dictionaryにセットされた「キー」「値」を別々に取り出す C#, Visual Basic のサンプルコードと実行結果を以下に記します。~ #contents * 関連サイト [#h36afdb0] -[[Microsoft .NET | Dictionary<TKey,TValue> クラス>https://docs.microsoft.com/ja-jp/dotnet/api/system.collections.generic.dictionary-2]] -[[Microsoft .NET | KeyValuePair<TKey,TValue> 構造体>https://docs.microsoft.com/ja-jp/dotnet/api/system.collections.generic.keyvaluepair-2]] * 関連記事 [#z83bb988] -[[連想配列(ハッシュ)を使ってみる・Dictionary>.NET/連想配列(ハッシュ)を使ってみる・Dictionary]] #htmlinsert(windev-top.html) * 動作確認環境 [#we16a42a] -Windows 10 ver.1909 -Visual Studio 2019 -.NET Core -コンソールアプリケーション * サンプルコードと実行結果 [#t11d765d] 以下に C#, Visual Basic のサンプルコードと実行結果を記します。~ サンプルコードの動作は以下の通りです。~ + Dictionaryで連想配列(kv)にキー、値を設定しています。~ データはキー、値ともstringを使っています。 + KeyValuePairを使って、キーと値を両方取得し表示しています。~ + キーのみ取得し表示します。 + 値のみ取得して表示します。 ** C# [#vbd5d828] #ref(Program.cs) using System; using System.Collections.Generic; class Program { static void Main(string[] args) { Dictionary<string, string> kv = new Dictionary<string, string> { { "Windows", "Microsoft" }, { "AndRoid", "Google" }, { "iOS", "Apple" } }; Console.WriteLine("-- key, value --"); foreach (KeyValuePair<string, string> kvp in kv) { Console.WriteLine("Key = {0}\tValue = {1}", kvp.Key, kvp.Value); } Console.WriteLine("-- key --"); foreach (string k in kv.Keys) { Console.WriteLine("Key = {0}", k); } Console.WriteLine("-- value --"); foreach (string v in kv.Values) { Console.WriteLine("value = {0}", v); } } } ** Visual Basic [#qd629b06] #ref(Program.vb) Imports System Module Program Sub Main(args As String()) Dim kv As Dictionary(Of String, String) = New Dictionary(Of String, String) From { {"Windows", "Microsoft"}, {"AndRoid", "Google"}, {"iOS", "Apple"} } Console.WriteLine("-- key, value --") For Each kvp As KeyValuePair(Of String, String) In kv Console.WriteLine("Key = {0}" & vbTab & "Value = {1}", kvp.Key, kvp.Value) Next Console.WriteLine("-- key --") For Each k As String In kv.Keys Console.WriteLine("Key = {0}", k) Next Console.WriteLine("-- value --") For Each v As String In kv.Values Console.WriteLine("value = {0}", v) Next End Sub End Module ** 実行結果 [#vc909f9c] 上記のサンプルコードを実行したときのキャプチャです。 #ref(run.png) 以上、Dictionary, KeyValuePairで連想配列(ハッシュ)のキーおよび値を取得するサンプルコードでした。 #htmlinsert(windev-btm.html)