gpt4 book ai didi

c# - 使用 LINQ 将元素附加到集合

转载 作者:太空狗 更新时间:2023-10-29 20:51:53 24 4
gpt4 key购买 nike

我正在尝试使用 C# 中的函数式方法处理一些列表。

我的想法是我有一个 Tuple<T,double> 的集合我想更改 Item 2一些元素 T .

由于数据是不可变的,这样做的功能方法是获取列表,过滤元素与要更改的元素不同的所有元素,然后附加一个具有新值的新元组。

我的问题是我不知道如何在末尾追加元素。我想这样做:

public List<Tuple<T,double>> Replace(List<Tuple<T,double>> collection, T term,double value)
{
return collection.Where(x=>!x.Item1.Equals(term)).Append(Tuple.Create(term,value));
}

但是没有Append方法。还有别的吗?

最佳答案

我相信您正在寻找 Concat 运营商。

它连接两个 IEnumerable<T>在一起,这样你就可以创建一个只有一个项目的加入。

public List<Tuple<T,double>> Replace(List<Tuple<T,double>> collection, T term,double value)
{
var newItem = new List<Tuple<T,double>>();
newItem.Add(new Tuple<T,double>(term,value));
return collection.Where(x=>!x.Item1.Equals(term)).Concat(newItem).ToList();
}

关于c# - 使用 LINQ 将元素附加到集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8180445/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com