我是编程新手,我使用以下命令创建了一个元组列表
var tupleList = new List<Tuple<string, string>> { };
稍后在代码中,我想添加一个元素,例如
tupleList.Add(string1,string2);
但是 .Add 不支持这个吗?
基本上,我正在经历一个循环并添加到元组中,稍后我想在元组中搜索示例字符串,所以我的第二个问题是如何搜索 tupleList.Item1 并获取所有对等于,例如 string10?我看到了字典值的答案,但是我可以对元组做同样的事情吗?
var matches = tupleList.Where(pair => pair.Item1.Equals(string10))
.Select(pair => Item2.Key);
我不知道这是否有意义,这是原始代码:
var matches = dict.Where(pair => pair.Value == "abc")
.Select(pair => pair.Key);
最佳答案
List<T>
没有任何处理元组的特定方法。它适用于任何类型 T
。如果你想向列表添加新项目,你应该创建列表类型 T
的项目并将其传递给列表。添加新元组:
tupleList.Add(Tuple.Create(string1,string2));
仅搜索过滤元组列表。您不应该使用 Select
来投影元组运算符,如果你想得到它们作为结果:
var matches = tupleList.Where(pair => pair.Item1 == string10);
注意:我不喜欢元组,因为它们的名称毫无意义,例如 Item1、Item2 等,这很难理解。考虑创建自定义类,该类将具有带有描述性名称的属性。
关于c# - 将元素添加到初始化之外的元组 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24480280/