【问题标题】:C# - How do I remove a value from a List<Tuple>C# - 如何从 List<Tuple> 中删除一个值
【发布时间】:2012-12-03 20:28:51
【问题描述】:

我有一个三元组 List&lt;Tuple&gt;string, string, string
初始化: List&lt;Tuple&lt;string, string string&gt;&gt; myTupleList = new List&lt;Tuple&lt;string, string, string&gt;&gt;();
我基本上想在Item2 中搜索一个值,如果找到则删除整个条目。
让我形象化。如果我有:

Item1 | Item2 | Item3
---------------------
"bar" | "foo" | "baz"
---------------------
"cat" | "dog" | "sun"
---------------------
"fun" | "bun" | "pun"

我想做

//pseudocode
myTupleList.Remove("dog" in Item2);

制作清单

Item1 | Item2 | Item3
---------------------
"bar" | "foo" | "baz"
---------------------
"fun" | "bun" | "pun"

【问题讨论】:

    标签: c# list tuples


    【解决方案1】:

    看看List&lt;T&gt;RemoveAll method。它允许您根据谓词删除项目。

    例如,您可以只检查 Item2 属性,正如您在问题中所说:

    myTupleList.RemoveAll(item => item.Item2 == "dog");
    

    请注意(正如方法名称所暗示的那样)这将删除匹配此条件的 所有 元素。因此,如果有几个元素的Item2 属性等于"dog",则它们都将被删除。

    【讨论】:

      【解决方案2】:
      myTupleList.RemoveAll( p => p.Item2 == "dog");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-17
        • 2012-06-07
        • 1970-01-01
        相关资源
        最近更新 更多