c#字符串、数组之间的相互转换

1,084 阅读1分钟

一.字符串转化成数组

1.使用ToCharArray()方法,

将字符串转化成数组,根据,进行分割开,然后转成字符数组

            string str = "1,2,3,4,5";
            string[] newstr = str.Split(",");
            char[] arr = str.ToCharArray();

2.使用循环进行转化(要求输入的是字符串数字)

            string str = Console.ReadLine();
            //使用空格将字符串进行分割
            string[] strArr = str.Split(" ");
            //创建了一个整型的数组
            int[] arr = new int[strArr.Length];
            //将分割出来的字符转成整型类型,放入整型数组中
            //1 2 4 6 1 12 15 100  length = 8,比较的次数就是为8 - 1 = 7,最后的数字是不用比较的
            for (int i = 0; i < arr.Length; i++)
            {
                arr[i] = Convert.ToInt32(strArr[i]);
            }

使用循环将字符串转化成数组,可以应用于冒泡排序,根据键盘输入的字符串数字进行整型数组的排序

            string str = Console.ReadLine();
            //使用空格将字符串进行分割
            string[] strArr = str.Split(" ");
            //创建了一个整型的数组
            int[] arr = new int[strArr.Length];
            //将分割出来的字符转成整型类型,放入整型数组中
            //1 2 4 6 1 12 15 100  length = 8,比较的次数就是为8 - 1 = 7,最后的数字是不用比较的
            for (int i = 0; i < arr.Length; i++)
            {
                arr[i] = Convert.ToInt32(strArr[i]);
            }
            //循环这个数组,判断相邻俩个数之间的大小
            for (int i = 1; i < arr.Length; i++)
            {
                //比对俩个相邻的数
                for (int j = 0; j < arr.Length - i; j++)
                {
                    //如果前一个比后一个大,就交换
                    if (arr[j] > arr[j + 1])
                    {
                        int temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
            }
            Console.WriteLine(String.Join(" ", arr));

二.数组转化成字符串

1.使用String.Join(参数1,参数2)

参数1:转化后的每个字符之间是什么符号相连的 参数2:需要转化的数组变量

            int[] intArray1 = { 1, 2, 3, 4, 5 };
            int[] intArray2 = new int[5] { 1, 2, 3, 4, 5 };
            Console.WriteLine(String.Join(" ", intArray1));