C# 如何在具有值的字典中查找键值对>;密钥与特定字符串模式匹配的0?
这是一本字典C# 如何在具有值的字典中查找键值对>;密钥与特定字符串模式匹配的0?,c#,linq,dictionary,C#,Linq,Dictionary,这是一本字典 Dictionary<string, uint> oSomeDictionary = new Dictionary<string, uint>(); oSomeDictionary.Add("dart1",1); oSomeDictionary.Add("card2",1); oSomeDictionary.Add("dart3",2); oSomeDictionary.Add("card4",0); oSomeDictionary.Add("dart5"
Dictionary<string, uint> oSomeDictionary = new Dictionary<string, uint>();
oSomeDictionary.Add("dart1",1);
oSomeDictionary.Add("card2",1);
oSomeDictionary.Add("dart3",2);
oSomeDictionary.Add("card4",0);
oSomeDictionary.Add("dart5",3);
oSomeDictionary.Add("card6",1);
oSomeDictionary.Add("card7",0);
Dictionary-oSomeDictionary=newdictionary();
添加(“dart1”,1);
oSomeDictionary.Add(“card2”,1);
oSomeDictionary.Add(“dart3”,2);
oSomeDictionary.Add(“card4”,0);
oSomeDictionary.Add(“dart5”,3);
oSomeDictionary.Add(“card6”,1);
oSomeDictionary.Add(“card7”,0);
如何从oSomeDictionary
中获取以字符串“card”开头且值大于零的键/值对
var result = oSomeDictionary.Where(r=> r.Key.StartsWith("card") && r.Value > 0);
对于输出:
foreach (var item in result)
{
Console.WriteLine("Key: {0}, Value: {1}", item.Key, item.Value);
}
输出:
Key: card2, Value: 1
Key: card6, Value: 1
请记住使用System.Linq导入,
可以用来过滤字典元素
var result = oSomeDictionary.Where(c=>c.Key.StartsWith("card") && c.Value > 0)
Dictionary
实现了您可以使用以下方法:
Dictionary<string, uint> oSomeDictionary = new Dictionary<string, uint>();
oSomeDictionary.Add("dart1", 1);
oSomeDictionary.Add("card2", 1);
oSomeDictionary.Add("dart3", 2);
oSomeDictionary.Add("card4", 0);
oSomeDictionary.Add("dart5", 3);
oSomeDictionary.Add("card6", 1);
oSomeDictionary.Add("card7", 0);
var yourlist = oSomeDictionary.Where(n => n.Key.StartsWith("card") && n.Value > 0);
foreach (var i in yourlist)
{
Console.WriteLine("Key: {0}, Value: {1}", i.Key, i.Value);
}
这是一个。课程计划
{
私有静态void Main(字符串[]args)
{
Dictionary oSomeDictionary=新字典();
添加(“dart1”,1);
oSomeDictionary.Add(“card2”,1);
oSomeDictionary.Add(“dart3”,2);
oSomeDictionary.Add(“card4”,0);
oSomeDictionary.Add(“dart5”,3);
oSomeDictionary.Add(“card6”,1);
oSomeDictionary.Add(“card7”,0);
var result=oSomeDictionary.Where(pair=>pair.Key.StartsWith(“卡片”)&&pair.Value>0);
foreach(结果中的var kvp)
{
WriteLine(“{0}:{1}”,kvp.Key,kvp.Value);
}
Console.ReadLine();
}
}
完整的工作代码以上
[card2, 1]
[card6, 1]
Dictionary<string, uint> oSomeDictionary = new Dictionary<string, uint>();
oSomeDictionary.Add("dart1", 1);
oSomeDictionary.Add("card2", 1);
oSomeDictionary.Add("dart3", 2);
oSomeDictionary.Add("card4", 0);
oSomeDictionary.Add("dart5", 3);
oSomeDictionary.Add("card6", 1);
oSomeDictionary.Add("card7", 0);
var yourlist = oSomeDictionary.Where(n => n.Key.StartsWith("card") && n.Value > 0);
foreach (var i in yourlist)
{
Console.WriteLine("Key: {0}, Value: {1}", i.Key, i.Value);
}
Key: card2, Value: 1
Key: card6, Value: 1
class Program
{
private static void Main(string[] args)
{
Dictionary<string, uint> oSomeDictionary = new Dictionary<string, uint>();
oSomeDictionary.Add("dart1", 1);
oSomeDictionary.Add("card2", 1);
oSomeDictionary.Add("dart3", 2);
oSomeDictionary.Add("card4", 0);
oSomeDictionary.Add("dart5", 3);
oSomeDictionary.Add("card6", 1);
oSomeDictionary.Add("card7", 0);
var result = oSomeDictionary.Where(pair => pair.Key.StartsWith("card") && pair.Value > 0 );
foreach (var kvp in result)
{
Console.WriteLine("{0} : {1}",kvp.Key,kvp.Value);
}
Console.ReadLine();
}
}