C#でSortedListオブジェクトに特定の値が含まれているかどうかを確認する方法
C#のSortedListオブジェクトに特定の値が含まれているかどうかを確認するには、ContainsValueメソッドを使用します。このメソッドは、指定した値がSortedList内に存在する場合はtrue、存在しない場合はfalseを返します。
以下に具体的なコード例を示します。
コード例1
using System;
using System.Collections;
public class Demo {
public static void Main(){
SortedList list = new SortedList();
list.Add("1", "One");
list.Add("2", "Two");
list.Add("3", "Three");
list.Add("4", "Four");
list.Add("5", "Five");
list.Add("6", "Six");
list.Add("7", "Seven");
list.Add("8", "Eight");
Console.WriteLine("Key and Value of SortedList....");
foreach(DictionaryEntry k in list )
Console.WriteLine("Key: {0}, Value: {1}", k.Key , k.Value );
Console.WriteLine("Is the SortedList having the value? "+list.ContainsValue("Five"));
}
}出力結果
上記のコードを実行すると、次のような出力が得られます。
Key and Value of SortedList.... Key: 1, Value: One Key: 2, Value: Two Key: 3, Value: Three Key: 4, Value: Four Key: 5, Value: Five Key: 6, Value: Six Key: 7, Value: Seven Key: 8, Value: Eight Is the SortedList having the value? True
この例では、値「Five」がSortedListに存在するため、ContainsValueメソッドはTrueを返しています。
コード例2
次に、存在しない値を指定した場合の例を見てみましょう。
using System;
using System.Collections;
public class Demo {
public static void Main(){
SortedList list = new SortedList();
list.Add("1", "One");
list.Add("2", "Two");
list.Add("3", "Three");
list.Add("4", "Four");
list.Add("5", "Five");
list.Add("6", "Six");
list.Add("7", "Seven");
list.Add("8", "Eight");
Console.WriteLine("Key and Value of SortedList....");
foreach(DictionaryEntry k in list )
Console.WriteLine("Key: {0}, Value: {1}", k.Key , k.Value );
Console.WriteLine("Is the SortedList having the value? "+list.ContainsValue("Tenth"));
}
}出力結果
このコードを実行すると、次の出力が得られます。
Key and Value of SortedList.... Key: 1, Value: One Key: 2, Value: Two Key: 3, Value: Three Key: 4, Value: Four Key: 5, Value: Five Key: 6, Value: Six Key: 7, Value: Seven Key: 8, Value: Eight Is the SortedList having the value? False
値「Tenth」はSortedListに存在しないため、ContainsValueメソッドはFalseを返します。
補足:ContainsValueとContainsKeyの違い
なお、SortedListにはキーの存在を確認するContainsKeyメソッド(またはContainsメソッド)もあります。ContainsValueは値の検索を行うため、線形探索となり要素数が多い場合にはパフォーマンスに注意が必要です。一方、ContainsKeyはキーによる検索のため高速に動作します。用途に応じて適切なメソッドを選択しましょう。
-
【C#】SortedSetに特定の要素が含まれているか確認する方法(Containsメソッドの使い方)
C#のSortedSet<T>クラスには、指定した要素がセット内に存在するかどうかを判定するためのContainsメソッドが用意されています。この記事では、Containsメソッドを使った具体的なコード例とその実行結果を紹介します。ContainsメソッドとはContains(T item)は、SortedSet内に指定した要素が存在する場合はtrue、存在しない場合はfalseを返すメソッドです。SortedSetは内部でソートされた状態を維持しているため、高速な検索が可能です。サンプルコード1:文字列のSortedSetで要素を検索するまずは、文字列型のSortedSetに対し
-
C#でHashtable(ハッシュテーブル)に特定の値が含まれているか確認する方法
C#のHashtableに特定の値(Value)が含まれているかどうかを確認するには、ContainsValueメソッドを使用します。このメソッドは、指定した値がHashtable内に存在する場合はtrue、存在しない場合はfalseを返します。以下に具体的なコード例を示します。サンプルコード1using System; using System.Collections; public class Demo { public static void Main(){ Hashtable hash = new Hashtable(); hash.Add(1, A);