Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将数组元素拆分为另一个数组_C#_Arrays - Fatal编程技术网

C# 将数组元素拆分为另一个数组

C# 将数组元素拆分为另一个数组,c#,arrays,C#,Arrays,我有一个字符串数组: string[] A = new string[2] {"abcde", "gpfag"}; 如何按如下方式拆分此阵列: A[1] = new string[5] {"a", "b", "c", "d", "e"}; 有什么想法吗?您可以检查此代码是否对您有帮助 var charArray1 = A[0].ToCharArray()

我有一个字符串数组:

string[] A = new string[2] {"abcde", "gpfag"};
如何按如下方式拆分此阵列:

A[1] = new string[5] {"a", "b", "c", "d", "e"};

有什么想法吗?

您可以检查此代码是否对您有帮助

var charArray1 = A[0].ToCharArray();
当然,您不能按照注释中的建议执行此操作,您必须将展平的结果存储在新集合中

ToCharArray
将字符串转换为单个字符时,您可以使用展平初始字符串数组,并进一步使用扩展方法展平字符串并将其重新映射回字符串

using System;
using System.Linq;
using System.Reflection.Metadata.Ecma335;

namespace TestApp
{
    public class Program
    {
        public static void Main(string[] args)
        {

            string[] A = new string[2] { "abcde", "gpfag" };
            string[][] flattened = A.Select((item) => item.ToCharArray().Select((inner) => new String(inner, 1)).ToArray())
                                    .ToArray();             

            foreach (string[] outer in flattened)
            {
                foreach (string inner in outer)
                {
                    Console.WriteLine(inner);
                }
            }
        }
    }
}
输出-

a
b
c
d
e
g
p
f
a
g
您已经有了:

for (int i = 0; i < A[1].Length; i++)
{
    Console.WriteLine(A[1][i]);
}

注意:这使用
char
值,因为字符串是一个字符序列。你想要的不会起作用,因为你试图使用一个字符串序列,这是不一样的。

这显然不会起作用,因为
a
字符串[]
而不是
字符串[][]
,所以你肯定不能在适当的地方这样做。您需要一个
字符串[][]
,然后它只是一个字符串拆分 g p f a g
A[1] = new string(new char[] {'a', 'b', 'c', 'd', 'e'});