什么是Haskell中的C#相当于map函数

Haskell中的map函数有两个input参数。 第一个参数是一个函数,第二个参数是一个列表。 map函数将作为inputparameter passing的函数应用于列表中的所有元素,并返回一个新列表。

有没有一个C#相当于这个function?

Select

MSDN参考

看到我的问题在这里 (只有你好奇,因为它不是直接相关的)。

SelectSelectMany另一种替代方法是编写自己的扩展方法。

 public static IEnumerable<U> Map<T, U>(this IEnumerable<T> s, Func<T, U> f) { foreach (var item in s) yield return f(item); } 

感谢韦斯代尔这个可爱的扩展方法! :)见详细信息。

由于SelectSelectMany已经被提及,所以我会回答一个你没有问的另一个问题: fold被find为Aggregate 。

现在,每个人都应该有充分的准备去成为那个用X语言编写X语言的人……所以为了你们的C#程序员,不要太过分

为了回答一个你没有问的问题,Haskell绑定“序列”monad的等价物在C#中被称为SelectMany。 有关详细信息,请参阅Wes Dyer的伟大文章:

http://blogs.msdn.com/wesdyer/archive/2008/01/11/the-marvels-of-monads.aspx

ConvertAll如何? 它看起来像最接近地图。