No, you can't modify an array while you're enumerating it with ForEach
, and strings are immutable so there's no function that will modify the instance in-place.
You could do either:
for (int i=0; i<buzoneslist.Length; i++)
buzoneslist[i] = buzoneslist[i].Replace(",", "");
Or:
buzoneslist = buzoneslist.Select(t => t.Replace(",", "")).ToArray();
I suppose if you really wanted to use a lambda, you could write an extension method:
public static class Extensions {
public static void ChangeEach<T>(this T[] array, Func<T,T> mutator) {
for (int i=0; i<array.Length; i++) {
array[i] = mutator(array[i]);
}
}
}
And then:
buzoneslist.ChangeEach(t => t.Replace(",", ""));