C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でSortedListオブジェクトの値を取得する方法

C#のSortedListオブジェクトに格納された値を取得するには、Valuesプロパティを使用します。同様に、キーを取得する場合はKeysプロパティが利用できます。以下に具体的なコード例を示します。

例1:数値キーのSortedListから値を取得する

using System;
using System.Collections;

public class Demo {
   public static void Main(String[] args) {
      SortedList list = new SortedList();
      list.Add(1, "One");
      list.Add(2, "Two");
      list.Add(3, "Three");
      list.Add(4, "Four");
      list.Add(5, "Five");

      ICollection col1 = list.Values;
      Console.WriteLine("Values...");
      foreach(string s in col1)
         Console.WriteLine(s);

      ICollection col2 = list.Keys;
      Console.WriteLine("Keys...");
      foreach(int s in col2)
         Console.WriteLine(s);
   }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

Values...
One
Two
Three
Four
Five
Keys...
1
2
3
4
5

コードの解説

list.Valuesプロパティは、SortedList内のすべての値をICollectionとして返します。返されたコレクションをforeachループで反復処理することで、各値を順番に取り出せます。SortedListはキーに基づいて自動的にソートされるため、値もキーの並び順に従って取得される点に注意してください。

同様に、list.Keysプロパティを使えば、すべてのキーをICollectionとして取得できます。

例2:文字列キーのSortedListから値を取得する

続いて、文字列をキーとする別の例を見てみましょう。

using System;
using System.Collections;

public class Demo {
   public static void Main(String[] args) {
      SortedList list = new SortedList();
      list.Add("A", "Jacob");
      list.Add("B", "Sam");
      list.Add("C", "Tom");
      list.Add("D", "John");
      list.Add("E", "Tim");
      list.Add("F", "Mark");
      list.Add("G", "Gary");
      list.Add("H", "Nathan");
      list.Add("I", "Shaun");
      list.Add("J", "David");

      ICollection col1 = list.Values;
      Console.WriteLine("Values...");
      foreach(string s in col1)
         Console.WriteLine(s);

      ICollection col2 = list.Keys;
      Console.WriteLine("\nKeys...");
      foreach(string s in col2)
         Console.WriteLine(s);
   }
}

出力結果

このコードを実行すると、以下の出力が生成されます。

Values...
Jacob
Sam
Tom
John
Tim
Mark
Gary
Nathan
Shaun
David
Keys...
A
B
C
D
E
F
G
H
I
J

まとめ

SortedListオブジェクトの値を取得するにはValuesプロパティ、キーを取得するにはKeysプロパティを使用します。いずれもICollection型を返すため、foreachループを使って簡単に要素を反復処理できるのが特徴です。キーが自動的にソートされる特性を活かせば、整然としたデータの取り出しが可能になります。

  1. C#のSortedListクラスとは?特徴と基本的な使い方を解説

    SortedListクラスとは C#のSortedListクラスは、配列とハッシュテーブルを組み合わせたコレクションです。キーと値のペアからなるリストを保持しており、各要素には「キー」または「インデックス」のどちらからでもアクセスできます。 インデックスを使ってアクセスすればArrayListのように振る舞い、キーを使ってアクセスすればHashtableのように振る舞います。最大の特徴は、コレクション内の項目が常にキーの値に基づいて自動的にソートされるという点です。また、キーは重複できず、各キーには1つの値のみが対応します。 例:SortedListに要素を追加する Add()メソッドを使う

  2. C#のSortedListクラスのValuesプロパティとは?使い方を実例付きで解説

    C#のSortedListクラスのValuesプロパティとは C#のSortedListクラスには、コレクションに格納されたすべての値(バリュー)を取得できるValuesプロパティが用意されています。キーを意識せずに値だけを順番に取り出したい場合に便利なプロパティです。ここでは、実際のコード例を通して基本的な使い方を解説します。 手順1:SortedListクラスのインスタンスを作成する まず、SortedListクラスを宣言します。 SortedList list = new SortedList(); 手順2:Addメソッドで要素を追加する 続いて、Addメソッドを使ってキーと値のペアを追