【问题标题】:How does Array.Reverse work?Array.Reverse 是如何工作的?
【发布时间】:2015-07-22 14:20:20
【问题描述】:

我有这段简单的代码..

bool isTrue(char[] number)
{
    char[] reverse = number;
    Array.Reverse(reverse);
}

在调试应用程序时,我看到这个数字也颠倒了。有人可以向我解释为什么吗?它与 char 数组的工作方式有关,还是我遗漏了什么?

【问题讨论】:

标签: c# arrays char reverse


【解决方案1】:

char[] reverse = number;

您不是在创建数组的副本,而只是对它的另一个引用。

如果要复制数组,可以使用.Clone()

char[] reverse = number.Clone();

【讨论】:

  • 谢谢。这只发生在 char 数组中吗?还是与 int 数组和其他类型的数组一样?
  • 这适用于所有数组,无论类型如何。
  • 感谢您的信息
【解决方案2】:

尝试使用number.CopyTo(reverse, 0) 而不是char[] reverse = number;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-24
    • 2016-11-13
    • 2017-10-11
    • 2021-10-13
    • 2011-02-24
    • 2013-11-16
    相关资源
    最近更新 更多