很简单,用 Array.ConvertAll 方法直接强转即可。
string[] vs = new string[] {"2","3","4" };
int[] myInts = Array.ConvertAll(arr, int.Parse);
如果用 Linq 的话,你可以将 int.Parse 丢到 Select 扩展方法即可。
string[] vs = new string[] {"2","3","4"};
int[] myInts = arr.Select(int.Parse).ToArray();
为了避免异常,建议用 .TryParse 而不是 .Parse,如果遇到不能转换的,还可以用 0 进行替代,参考如下代码。
string[] vs = new string[] {"2","3","4","a" };
var ints=Array.ConvertAll(vs, s => int.TryParse(s, out int i) ? i : 0);