C# 数组——如何把一个二维数组的所有值复制到另一个二维数组中


创建一个二维数组

int[,] matrix = new int[2, 3]{{1,2,3},{4,5,6}};//原数组
int row=matrix.GetLength(0);//数组行数
int col=matrix.GetLength(1);//数组列数
int length = matrix.Length;//总长度

a方法:遍历数组,逐一赋值

int[,] a = new int[row, col];
for (int i = 0; i <row ; i++){
for (int j = 0; j < col; j++)
a[i, j] = matrix[i, j];
}

b方法:Array.Clone函数,b是原数组matrix的副本
int[,] b = (int[,])matrix.Clone();

c方法:Array.Copy函数,把原数组matrix拷贝给c数组,要求维数一致
int[,] c = new int[row, col];
Array.Copy(matrix, c, matrix.Length);

d方法:直接赋值,d数组是原数组matrix的映射。任何一方数组的值改动都会影响两方,所以不是正真的复制,有点像指针。

lint[,] d = matrix;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM