【发布时间】:2019-10-06 17:17:02
【问题描述】:
为什么在改变 arr1[1] 的值时 arr[1] 的值会改变?同样,为什么((int[])o)[1] = 1000;
class Program
{
static void Main(string[] args)
{
int[] arr = new int[2];
arr[1] = 10;
Object o = arr;
int[] arr1 = (int[])o;
arr1[1] = 100;
Console.WriteLine(arr[1]);
((int[])o)[1] = 1000;
Console.WriteLine(arr[1]);
}
}
为什么答案是 100 和 1000?
此代码是来自https://www.techbeamers.com/csharp-coding-interview-questions-developers/的问题5
【问题讨论】: