Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在具有值的字典中查找键值对>;密钥与特定字符串模式匹配的0?_C#_Linq_Dictionary - Fatal编程技术网

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();
        }
   }