C#实现数组元素的数据类型转换方法详解
在C#的开发中我们可能会面临需要对数组中的元素进行数据类型的转换,下面详细介绍C#中实现数组数据类型转换的方法。
转换方法1:使用Convert类的To()方法
Convert类有多个静态方法可以实现数据类型转换,其中To()方法可以转换大部分常量类型。下面是使用Convert类的To()方法进行数据类型转换的方法:
int[] numArray = {100, 200, 300, 400, 500};
string[] strArray = Array.ConvertAll(numArray, x => x.ToString());
上面的代码将int类型的数组numArray中的元素转换成string类型,并赋值给string类型的数组strArray。
转换方法2:使用LINQ库的Select()方法
在C#中,也可以用LINQ库的Select()方法进行数据类型转换。下面是使用LINQ库的Select()方法实现的示例:
int[] numArray = {100, 200, 300, 400, 500};
string[] strArray = numArray.Select(x => x.ToString()).ToArray();
上面的代码中,通过使用Select()方法和数组的ToString()方法将numArray中的int类型元素转换成string类型。
示例说明
示例1:将bool类型的数组转换成int类型的数组
bool[] boolArray = {true, false, true, false, true};
int[] intArray = Array.ConvertAll(boolArray, x => x ? 1 : 0);
Console.WriteLine(string.Join(", ", intArray)); // 1, 0, 1, 0, 1
上面的代码将bool类型的数组boolArray中的true和false转换成相应的int类型的1和0,输出结果为1, 0, 1, 0, 1。
示例2:将string类型的数组转换成decimal类型的数组
string[] strArray = {"12.5", "10.2", "15.9", "22.6", "8.3"};
decimal[] decimalArray = strArray.Select(x => decimal.Parse(x)).ToArray();
Console.WriteLine(string.Join(", ", decimalArray)); // 12.5, 10.2, 15.9, 22.6, 8.3
上面的代码将string类型的数组strArray中的元素转换成decimal类型,并输出结果为12.5, 10.2, 15.9, 22.6, 8.3。
注意:在进行数据类型转换时需要确保所转换的值符合要求,否则会抛出异常。例如,上面的示例2中,如果存在一个非数字的字符串,如"abc",则会抛出“输入字符串的格式不正确”异常。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#实现数组元素的数据类型转换方法详解 - Python技术站