C#のSortedListで指定したキーに関連付けられた値を取得・設定する方法
C#のSortedListクラスでは、インデクサ(this[])を使うことで、指定したキーに関連付けられた値を簡単に取得したり、上書き設定したりすることができます。
基本的な使い方
list["キー"] の形式でアクセスすると、そのキーに対応する値が返されます。同じ構文で値を代入すると、既存のキーの値を更新できます。
サンプルコード
以下の例では、SortedListに複数のキーと値を追加し、キー「E」に関連付けられた値を取得した後、新しい値で更新しています。
using System;
using System.Collections;
public class Demo {
public static void Main() {
SortedList list = new SortedList();
list.Add("A", "Books");
list.Add("B", "Electronics");
list.Add("C", "Appliances");
list.Add("D", "Pet Supplies");
list.Add("E", "Clothing");
list.Add("F", "Footwear");
// キー「E」に関連付けられた値を取得
Console.WriteLine("Value associated with key E = " + list["E"]);
// キー「E」の値を更新
list["E"] = "HDD";
Console.WriteLine("Value associated with key E [Updated] = " + list["E"]);
}
}実行結果
このプログラムを実行すると、次のような出力が得られます。
Value associated with key E = Clothing Value associated with key E [Updated] = HDD
最初はキー「E」に登録されていた「Clothing」が表示され、値を更新した後は「HDD」が出力されていることがわかります。
別の例:値の取得のみ
続いて、指定したキーの値を取得するだけのシンプルな例を見てみましょう。
using System;
using System.Collections;
public class Demo {
public static void Main() {
SortedList list = new SortedList();
list.Add("A", "Books");
list.Add("B", "Electronics");
list.Add("C", "Appliances");
list.Add("D", "Pet Supplies");
list.Add("E", "Clothing");
list.Add("F", "Footwear");
// キー「D」に関連付けられた値を取得
Console.WriteLine("Value associated with key D = " + list["D"]);
}
}実行結果
このプログラムを実行すると、次のような出力が得られます。
Value associated with key D = Pet Supplies
ポイントまとめ
SortedListの値へのアクセスにはインデクサlist[key]を使用します。- 既存のキーに対して代入すると、そのキーの値が更新されます。
- 存在しないキーを読み取ると
nullが返されるため、事前にContainsKey()メソッドでキーの存在を確認しておくと安全です。
-
【C#】StringDictionaryで指定したキーに関連付けられた値を取得・設定する方法
C#のStringDictionaryクラスでは、インデクサー([])を使うことで、指定したキーに関連付けられた値を簡単に取得したり、新しい値に更新したりできます。この記事では、その基本的な使い方をサンプルコードと実行結果とともに解説します。指定したキーの値を取得するまずは、既存のキーに対してインデクサーでアクセスし、関連付けられた値を取得する例を見てみましょう。using System; using System.Collections.Specialized; public class Demo { public static void Main() { StringD
-
C#のListDictionaryで指定したキーに関連付けられた値を取得・設定する方法
C#のListDictionaryでは、インデクサー(Itemプロパティ)を使うことで、指定したキーに関連付けられた値を簡単に取得したり、新しい値に更新したりできます。ListDictionaryはSystem.Collections.Specialized名前空間に属するコレクションで、要素数が少ない場合(目安として10項目程度まで)に高いパフォーマンスを発揮する特徴があります。以下のコード例では、キー「C」に関連付けられた値の取得と更新の両方を確認できます。例1:キーに関連付けられた値を取得するusing System; using System.Collections; using Sy