Dictionaryの要素に指定したKeyやValueが存在するかどうか判定するには、
.ContainsKey()、.ContainsValue() を使用します。
サンプル
例1)Dictionaryに指定したkeyが存在するか判定する
using System.Collections.Generic;
//Dictionaryの生成
Dictionary<string, string> dc = new Dictionary<string, string>();
dc.Add("01", "大阪");
dc.Add("02", "京都");
dc.Add("03", "神戸");
//Keyに"02"が存在するかチェックする
bool b = dc.ContainsKey("02");
→ true
//Keyに"05"が存在するかチェックする
bool b = dc.ContainsKey("05");
→ false
例2)Dictionaryに指定したValueが存在するか判定する
using System.Collections.Generic;
//Dictionaryの生成
Dictionary<string, string> dc = new Dictionary<string, string>();
dc.Add("01", "大阪");
dc.Add("02", "京都");
dc.Add("03", "神戸");
//Valueに"大阪"が存在するかチェックする
bool b = dc.ContainsValue("大阪");
→ true
//Valueに"東京"が存在するかチェックする
bool b = dc.ContainsValue("東京");
→ false
備考
- Dictionaryに同じKeyの要素を追加すると例外が発生するので、
要素を追加する時はContainsKeyで判定してから追加すると安全です。