我有这段简单的代码..
bool isTrue(char[] number)
{
char[] reverse = number;
Array.Reverse(reverse);
}
调试应用程序时,我看到该号码也是相反的。有人能解释一下为什么吗?它与char数组的工作方式有关,还是我遗漏了什么?
答案 0 :(得分:5)
使用
char[] reverse = number;
您不是要创建数组的副本,而只是创建它的另一个引用。
如果要复制数组,可以使用.Clone()
:
char[] reverse = number.Clone();
答案 1 :(得分:2)
尝试使用number.CopyTo(reverse, 0)代替char[] reverse = number;