Ответ 1
a = a.Select( s => s + "!" ).ToArray();
В Ruby вы можете использовать метод map/collect для массива, чтобы изменить его:
a = [ "a", "b", "c", "d" ]
a.collect! {|x| x + "!" }
a #=> [ "a!", "b!", "c!", "d!" ]
Есть ли простой способ сделать это на С#?
a = a.Select( s => s + "!" ).ToArray();
Я предпочитаю использовать ConvertAll, так как это быстрее, и я считаю более интуитивно понятным.
var a = a.ConvertAll(x => x + "!").ToArray();
вы можете попробовать это
var a = new[] { "a", "b", "c", "d" };
a = a.Select(p => p + "!").ToArray();
Yup, используя Linq (но это не изменит первоначальную коллекцию)
var a=new[]{"a","b","c","d"};
a.Select(x=>x+"!");