C#中将string[] 转成 int[]的几种方法


C#中将string[] 转成 int[]的方式有很多种。

直接遍历转换

这是最简单粗暴的方式。实例代码:
image

使用LINQ遍历

本质和直接遍历没多大差异,但代码量更少,代码更美观。实例代码:
注意:需要引入System.Linq命名空间。
image

使用Array.ConvertAll静态方法

和LINQ遍历相当类似。实例代码:
image

完整的实例代码

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();
        }
    }
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM