10

特定の辞書キーに値が含まれているかどうかを確認しようとしています

例えば

dict01の「tester」キーに「testing」というフレーズが含まれていますか

現時点では、KeyPairを使用して辞書を反復処理する必要がありますが、パフォーマンスが無駄になるため、これを実行する必要はありません。

4

3 に答える 3

19

あなたはContainsKeystring.Containsを使うことができます:

var key = "tester";
var val = "testing";
if(myDictionary.ContainsKey(key) && myDictionary[key].Contains(val)) 
{
    // "tester" key exists and contains "testing" value
}

TryGetValueを使用することもできます:

var key = "tester";
var val = "testing";
var dicVal = string.Empty;
if(myDictionary.TryGetValue(key, out dicVal) && dicVal.contains(val)) 
{
    // "tester" key exists and contains "testing" value
}
于 2012-07-29T12:41:15.857 に答える
2

辞書を2回繰り返したくない場合は、次の方法を使用できます。

string value;
var result = dict01.TryGetValue("tester", out value) && value.Contains("testing");
于 2012-07-29T12:49:55.787 に答える
-1
if (myDict.ContainsKey("tester"))
    // Do something?

MSDNの詳細

于 2012-07-29T12:42:00.947 に答える