【发布时间】:2016-01-17 00:22:53
【问题描述】:
有两个字节数组填充了不同的值。
byte[] Array1 = new byte[5];
byte[] Array2 = new byte[5];
那么,我需要Array1 来获得与Array2 完全相同的值。
通过输入Array1 = Array2 我只会设置引用,这不会复制值。
可能的解决方案是什么?
编辑:
所有答案都很好,所有解决方案都有效。对于我的特殊情况,第一个解决方案中的代码在视觉上看起来更具描述性。
Array1 = Array2.ToArray();
和
Array1.CopyTo(Array2, 0);
还有
Buffer.BlockCopy(Array2, 0, Array1, 0, 5);
【问题讨论】:
-
不,第一个数组应该是第二个数组的精确副本。但它不应该以任何方式与它联系起来。不应该是指针。
-
“两个答案都很好,两个解决方案都有效”。以及第一条评论中提到的
Buffer.BlockCopy,任何Array.Copy 过载,Array.Clone