Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.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# 如何合并2个字符串数组(不是字符串列表)?_C# - Fatal编程技术网

C# 如何合并2个字符串数组(不是字符串列表)?

C# 如何合并2个字符串数组(不是字符串列表)?,c#,C#,我正在尝试此解决方案,但复制不适用于字符串数组。我无法更改数组的类型 有什么建议吗 也许: string[] result = arr1.Concat(arr2).ToArray(); 或者(如果您不想重复): 或者,可能更有效地使用: 公共静态T[]Concat(此T[]x,T[]y) { 如果(x==null)抛出新的ArgumentNullException(“x”); 如果(y==null)抛出新的ArgumentNullException(“y”); int oldLen=x.长度;

我正在尝试此解决方案,但复制不适用于字符串数组。我无法更改数组的类型

有什么建议吗

也许:

string[] result = arr1.Concat(arr2).ToArray();
或者(如果您不想重复):

或者,可能更有效地使用:

公共静态T[]Concat(此T[]x,T[]y)
{
如果(x==null)抛出新的ArgumentNullException(“x”);
如果(y==null)抛出新的ArgumentNullException(“y”);
int oldLen=x.长度;
调整数组大小(参考x,x.长度+y.长度);
数组.Copy(y,0,x,oldLen,y.Length);
返回x;
}
string[] result = arr1.Union(arr2).ToArray();
public static T[] Concat<T>(this T[] x, T[] y)
{
    if (x == null) throw new ArgumentNullException("x");
    if (y == null) throw new ArgumentNullException("y");
    int oldLen = x.Length;
    Array.Resize<T>(ref x, x.Length + y.Length);
    Array.Copy(y, 0, x, oldLen, y.Length);
    return x;
}