📅  最后修改于: 2023-12-03 15:37:50.620000             🧑  作者: Mango
在 C# 中复制一个二维数组可以使用 Array 类的方法 Array.Copy
或 Array.Clone
。两种方法都可以实现复制功能,不同的是 Array.Copy
可以灵活设置源数组和目标数组的起始位置,复制的元素个数等信息,而 Array.Clone
则是直接复制整个数组。使用时应根据具体情况选择合适的方法。
int[,] source = {{1,2}, {3,4}};
int[,] dest = new int[2,2];
Array.Copy(source, dest, source.Length);
// 打印目标数组内容
for (int i = 0; i < dest.GetLength(0); i++)
{
for (int j = 0; j < dest.GetLength(1); j++)
{
Console.Write(dest[i,j] + " ");
}
Console.WriteLine();
}
输出结果:
1 2
3 4
代码解释:
Array.Copy
方法将源数组全部复制到目标数组中。int[,] source = {{1,2}, {3,4}};
int[,] dest = (int[,]) source.Clone();
// 打印目标数组内容
for (int i = 0; i < dest.GetLength(0); i++)
{
for (int j = 0; j < dest.GetLength(1); j++)
{
Console.Write(dest[i,j] + " ");
}
Console.WriteLine();
}
输出结果:
1 2
3 4
代码解释:
Clone
方法创建一个目标数组并进行复制。总体来说,二者实现起来都比较简单,使用时要根据具体情况选择方法。需要注意的是,在复制时要考虑源数组和目标数组的长度匹配,否则可能会抛出异常。