如何按键查找/检查字典值

时间:2012-07-29 12:39:27

标签: c# .net windows

我正在尝试确认特定字典键是否包含值

e.g。

dict01在“tester”键中包含短语“testing”

目前我不得不使用KeyPair迭代字典,我不想这样做因为它浪费性能

3 个答案:

答案 0 :(得分:13)

您可以使用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
}

答案 1 :(得分:2)

如果您不想两次遍历字典

,可以使用以下方法
string value;
var result = dict01.TryGetValue("tester", out value) && value.Contains("testing");

答案 2 :(得分:-1)

if (myDict.ContainsKey("tester"))
    // Do something?

More on MSDN