在Linq中,与Ruby中的map! or collect!方法相对应的是什么?
a = [ "a", "b", "c", "d" ]
a.collect! {|x| x + "!" }
a #=> [ "a!", "b!", "c!", "d!" ]
我可以通过使用foreach迭代集合来完成此操作,但我想知道是否有更优雅的Linq解决方案。
在Linq中,与Ruby中的map! or collect!方法相对应的是什么?
a = [ "a", "b", "c", "d" ]
a.collect! {|x| x + "!" }
a #=> [ "a!", "b!", "c!", "d!" ]
我可以通过使用foreach迭代集合来完成此操作,但我想知道是否有更优雅的Linq解决方案。
映射=选择
var x = new string[] { "a", "b", "c", "d"}.Select(s => s+"!");
更好地表示高阶函数map
的是在System.Linq
中的扩展方法Enumerable.Select。
如果你感兴趣,其他高阶函数可以分解如下:
reduce ->
Enumerable.Aggregate
filter ->
Enumerable.Where