int i = 0;
//装箱
object obj = i;
Debug.Log(i);
Debug.Log(obj);
i = 10;
Debug.Log(i);
Debug.Log(obj);
//拆箱
object obj2 = 5;
int i2 = (int)obj2;
Debug.Log(i2);
Debug.Log(obj2);
obj2 = 20;
Debug.Log(i2);
//装箱
object obj = i;
Debug.Log(i);
Debug.Log(obj);
i = 10;
Debug.Log(i);
Debug.Log(obj);
//拆箱
object obj2 = 5;
int i2 = (int)obj2;
Debug.Log(i2);
Debug.Log(obj2);
obj2 = 20;
Debug.Log(i2);
Debug.Log(obj2);
//最终的输出
所以改动之后,无论是值的还是引用的类型,都不会再受到之前的赋值的类型的变化而变化