26

什么是Linq相当于map!或收集!Ruby中的方法?

   a = [ "a", "b", "c", "d" ]
   a.collect! {|x| x + "!" }
   a             #=>  [ "a!", "b!", "c!", "d!" ]

可以通过使用 foreach 遍历集合来做到这一点,但我想知道是否有更优雅的 Linq 解决方案。

4

2 回答 2

37

地图 = 选择

var x = new string[] { "a", "b", "c", "d"}.Select(s => s+"!");
于 2009-03-31T17:25:37.643 回答
24

高阶函数map最好用Enumerable.Select表示,它是System.Linq.

如果您好奇,其他高阶函数会像这样爆发:

reduce -> Enumerable.Aggregate
filter -> Enumerable.Where

于 2009-03-31T17:25:40.543 回答