我正在尝试使用C#中的函数式方法处理一些列表。
我的想法是,我有一个包含T和double的Tuple集合,我想要更改某个元素T的Item 2。
由于数据是不可变的,所以函数式的做法是取出列表,过滤所有元素,其中元素与要更改的元素不同,并添加一个新的元组以存储新值。
我的问题是我不知道如何将元素附加到末尾。我希望能够这样做:
但是没有
我的想法是,我有一个包含T和double的Tuple集合,我想要更改某个元素T的Item 2。
由于数据是不可变的,所以函数式的做法是取出列表,过滤所有元素,其中元素与要更改的元素不同,并添加一个新的元组以存储新值。
我的问题是我不知道如何将元素附加到末尾。我希望能够这样做:
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
方法。还有其他的方法吗?