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

C#のContainsKeyメソッドの使い方を解説

C#のContainsKeyは、Dictionaryクラスが提供するメソッドの一つで、指定したキーがディクショナリ内に存在するかどうかを確認するために使用します。戻り値はbool型で、キーが存在すればtrue、存在しなければfalseを返します。

Dictionaryの宣言と要素の追加

まず、ディクショナリを宣言して要素を追加してみましょう。

var dict = new Dictionary<string, int>() {
    {"TV", 1},
    {"Home Theatre", 2},
    {"Amazon Alexa", 3},
    {"Google Home", 5},
    {"Laptop", 5},
    {"Bluetooth Speaker", 6}
};

ContainsKey()でキーの存在を確認する

ディクショナリ内に特定の要素(キー)が存在するかどうかを確認したい場合は、ContainsKey()メソッドを使用します。以下のように、if文と組み合わせて使うのが一般的です。

if (dict.ContainsKey("Laptop") == true) {
    Console.WriteLine(dict["Laptop"]);
}

このコードでは、キー「Laptop」が存在する場合のみ、その値を出力します。キーが存在しない状態でdict["Laptop"]にアクセスすると例外が発生するため、事前に存在チェックを行うことで安全に値を取得できます。

サンプルコード全体

以下に、完全なサンプルコードを示します。

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        var dict = new Dictionary<string, int>() {
            {"TV", 1},
            {"Home Theatre", 2},
            {"Amazon Alexa", 3},
            {"Google Home", 5},
            {"Laptop", 5},
            {"Bluetooth Speaker", 6}
        };

        if (dict.ContainsKey("Laptop") == true) {
            Console.WriteLine(dict["Laptop"]);
        }

        if (dict.ContainsKey("Amazon Alexa") == true) {
            Console.WriteLine(dict["Amazon Alexa"]);
        }
    }
}

実行結果

5
3

このように、ContainsKey()を使えば、キーの存在を簡単かつ安全に確認できます。特に、存在しないキーへのアクセスによるKeyNotFoundExceptionを防ぎたい場面で非常に役立ちます。なお、値の取得だけが目的の場合は、TryGetValue()メソッドを使うと、存在チェックと値の取得を一度に行えるため、より効率的なコードを書くことができます。

  1. C#のContainsKey()メソッドとは?Hashtableでキーの存在を確認する方法

    C#のContainsKey()メソッドは、Hashtableコレクション内に指定したキーが存在するかどうかを確認するための便利なメソッドです。キーが存在する場合はTrue、存在しない場合はFalseを返します。ContainsKey()メソッドの基本的な使い方まず、Hashtableコレクションを作成し、いくつかの要素を追加してみましょう。Hashtable h = new Hashtable(); h.Add(1, Sam); h.Add(2, Jack); h.Add(3, Andy); h.Add(4, Katie); h.Add(5, Beth); h.Add(6, Benjamin

  2. C#のContainsKeyメソッドの使い方を解説

    C#のContainsKeyは、Dictionaryクラスが提供するメソッドの一つで、指定したキーがディクショナリ内に存在するかどうかを確認するために使用します。戻り値はbool型で、キーが存在すればtrue、存在しなければfalseを返します。Dictionaryの宣言と要素の追加まず、ディクショナリを宣言して要素を追加してみましょう。var dict = new Dictionary<string, int>() { {TV, 1}, {Home Theatre, 2}, {Amazon Alexa, 3}, {Google Home, 5},