温馨提示×

C#三维数组如何实现深拷贝

c#
小樊
86
2024-08-05 14:37:08
栏目: 编程语言

要实现C#三维数组的深拷贝,可以使用循环遍历原数组,逐个复制元素到新数组中。以下是一个示例代码:

public static T[][][] DeepCopy3DArray<T>(T[][][] original)
{
    int firstDimension = original.Length;
    int secondDimension = original[0].Length;
    int thirdDimension = original[0][0].Length;

    T[][][] copy = new T[firstDimension][][];

    for (int i = 0; i < firstDimension; i++)
    {
        copy[i] = new T[secondDimension][];
        for (int j = 0; j < secondDimension; j++)
        {
            copy[i][j] = new T[thirdDimension];
            for (int k = 0; k < thirdDimension; k++)
            {
                copy[i][j][k] = original[i][j][k];
            }
        }
    }

    return copy;
}

使用这个方法可以对三维数组进行深拷贝,保证新数组和原数组之间没有引用关联,修改一个数组不会影响另一个数组。

0