目次

Dictionary オブジェクトに指定した値が存在しているか確認する

目次

Dictionary オブジェクトに指定した値が存在しているか確認するコードを紹介します。

概要

Dictionary オブジェクトで指定した値の要素が存在しているか確認したい場合があります。
Dictionaryオブジェクトの値の存在を確認するには、ContainsValue() メソッドを利用します。

書式

(Dictionayオブジェクト).ContainsValue([確認したい値])

Dictionayオブジェクトに値が存在していればtrueを返します。存在していない場合はfalseを返します。

実装例

Windows Formアプリケーションを作成します。

UI

下図のフォームを作成します。テキストボックスを2つ、ボタンを1つ配置します。 下図はボタンが2つ配置されていますが、今回のデモでは[button2]のみを利用します。

Dictionary オブジェクトに指定した値が存在しているか確認する:画像1

コード

以下のコードを記述します。button2のClickイベントを実装するコードです。

namespace DictionaryExistsDemo
{
  public partial class FormMain : Form
  {
    private Dictionary<int, string> dic = new Dictionary<int, string>();

    public FormMain()
    {
      InitializeComponent();

      dic.Add(8, "ぺんぎんクッキー");
      dic.Add(4, "らくだキャラメル");
      dic.Add(2, "しろくまアイス");
      dic.Add(7, "あひるタルト");
      dic.Add(1, "かるがもカステラ");
    }

    private void button2_Click(object sender, EventArgs e)
    {
      string input_value = textBox1.Text;
      if (dic.ContainsValue(input_value) == true) {
        textBox2.Text = "入力した値の項目はあります。";
      }
      else {
        textBox2.Text = "入力した値の項目はありません。";
      }
    }
  }
}

解説

FormのクラスのメンバにDictionaryオブジェクトを宣言します。
Formの作成時にDictionaryオブジェクトに値を挿入しています。

    private Dictionary<int, string> dic = new Dictionary<int, string>();

    public FormMain()
    {
      InitializeComponent();

      dic.Add(8, "ぺんぎんクッキー");
      dic.Add(4, "らくだキャラメル");
      dic.Add(2, "しろくまアイス");
      dic.Add(7, "あひるタルト");
      dic.Add(1, "かるがもカステラ");
    }


ボタンをクリックすると、テキストボックスに入力された値がDictionaryオブジェクトに存在しているかを判定します。 判定結果のメッセージを下部のテキストボックスに表示します。

    private void button2_Click(object sender, EventArgs e)
    {
      string input_value = textBox1.Text;
      if (dic.ContainsValue(input_value) == true) {
        textBox2.Text = "入力した値の項目はあります。";
      }
      else {
        textBox2.Text = "入力した値の項目はありません。";
      }
    }

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。
Dictionary オブジェクトに指定した値が存在しているか確認する:画像2

テキストボックスに"しろくまアイス"を入力し、[button2]ボタンをクリックします。 値がDictionaryに存在している旨のメッセージが下部のテキストボックスに表示されます。
Dictionary オブジェクトに指定した値が存在しているか確認する:画像3

"ふくろうフィナンシェ"を入力して[button2]をクリックした結果が下図です。 入力した値はDictionaryオブジェクトには含まれていませんので、項目がない旨のメッセージが表示されます。
Dictionary オブジェクトに指定した値が存在しているか確認する:画像4

"かるがも"を入力した例です。部分一致は一致とは判定されず、Dictionaryオブジェクトにない旨のべっせーじが表示されます。
Dictionary オブジェクトに指定した値が存在しているか確認する:画像5

"かるがもカステラ"を入力した場合の結果が下図です。完全に一致する値がDictionaryオブジェクトに存在していれば、 値がある旨のメッセージをテキストボックスに表示します。
Dictionary オブジェクトに指定した値が存在しているか確認する:画像6

Dictionaryオブジェクトに値が存在しているかの確認コードを紹介しました。

AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2024-03-28
Copyright © 1995–2025 iPentec all rights reserverd.