How to retrieve first row from dictionary in C#?
如何从此字典中检索第一行。我放了大约15张唱片。
1 2 | Dictionary<string, Tuple<string, string>> headINFO = new Dictionary<string, Tuple<string, string>> { }; |
您可以使用headinfo.first(),但是除非您知道
更多关于这两者之间差异的信息。
编辑:添加简单示例
下面是一个关于如何使用
1 2 3 | var info = headINFO.FirstOrDefault().Value; Console.WriteLine(info.Item1); // Prints Tuple item1 Console.WriteLine(info.Item2); // Prints Tuple item2 |
如果要打印多个项目,可以使用take(x)。在本例中,我们将遍历三个字典项,但您可以轻松地修改数字以获取更多项。
1 2 3 4 5 | foreach (var info in headINFO.Take(3)) { Console.WriteLine(info.Value.Item1); Console.WriteLine(info.Value.Item2); } |
您还应该记住,上面的
edit2:阐明first()的用法并添加了clean foreach示例
请记住,虽然
此外,如果您只想循环遍历所有项目,那么可以删除上述foreach循环中的
1 2 3 4 5 6 | foreach (var info in headINFO) { Console.WriteLine(info.Key); // Print Dictionary Key Console.WriteLine(info.Value.Item1); // Prints Turple Value 1 Console.WriteLine(info.Value.Item2); // Prints Turple Value 2 } |
字典是无序的,因此无法检索插入的第一个键值对。
您可以通过调用linq
最简单的方法就是使用Linq的
1 | var firstHead = headINFO.First(); |
或者,如果您希望更安全,如果字典为空,
1 | var firstHead = headINFO.FirstOrDefault(); |
如果要循环查找字典中的所有项,请尝试以下操作:
1 2 3 4 | foreach(var head in headINFO) { ... } |
试试这个代码。
1 | headINFO.FirstOrDefault(); |
试试这个:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | int c=0; foreach(var item in myDictionary) { c++; if(c==1) { myFirstVar = item.Value; } else if(c==2) { mySecondVar = item.Value; } ...... } |