C#中将string[] 转成 int[]的方式有很多种。
直接遍历转换
这是最简单粗暴的方式。实例代码:
使用LINQ遍历
本质和直接遍历没多大差异,但代码量更少,代码更美观。实例代码:
注意:需要引入System.Linq命名空间。
使用Array.ConvertAll静态方法
和LINQ遍历相当类似。实例代码:
完整的实例代码
using System;
using System.Linq;
namespace PandaTest
{
class Program
{
static void Main(string[] args)
{
//测试使用的字符串数组
string[] test = new string[6] {"888","666","555","Panda666", "777", "999" };
//最简单粗暴的方式直接遍历转换
int[] result1 = new int[test.Length];
for (int i = 0; i < test.Length; i++)
{
//使用TryParse减少异常
result1[i] = int.TryParse(test[i], out int temp) ? temp : 0;
}
foreach (var item in result1)
{
Console.WriteLine($"类型{item.GetType().ToString()},值{item}");
}
//使用LINQ
var result2 = test.Select(item => int.TryParse(item, out int i) ? i : 0);
foreach (var item in result2)
{
Console.WriteLine($"类型{item.GetType().ToString()},值{item}");
}
//使用Array.ConvertAll
var result3 = Array.ConvertAll(test, s => int.TryParse(s, out int i) ? i : 0);
foreach (var item in result3)
{
Console.WriteLine($"类型{item.GetType().ToString()},值{item}");
}
//wait
Console.ReadKey();
}
}
}
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/244394.html