C#数组映射/收集

时间:2010-02-18 00:29:37

标签: c# ruby c#-4.0

在Ruby中,您可以使用数组上的map / collect方法对其进行修改:

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

在C#中有一种简单的方法吗?

4 个答案:

答案 0 :(得分:28)

a = a.Select( s => s + "!" ).ToArray();

答案 1 :(得分:5)

我更喜欢使用ConvertAll,因为它更快,我相信更直观。

var a = a.ConvertAll(x => x + "!").ToArray();

答案 2 :(得分:1)

你可以试试这个

var a = new[] { "a", "b", "c", "d" };

a = a.Select(p => p + "!").ToArray();

答案 3 :(得分:0)

是的,使用Linq(但这不会修改原始集合)

var a=new[]{"a","b","c","d"};
a.Select(x=>x+"!");