日期:2014-05-20  浏览次数:20774 次

Integer 引用问题
Java code
class test01111433
{
    public static void main(String[] arg)
    {
        Integer x=100;
        Integer y=x;
        y=150;
        System.out.println(x.intValue());
        System.out.println(y.intValue());
    }
}



为什么输出的x,y值不一样?x,y不是引用么?
如果要写成像String那样的引用应该怎么写?

------解决方案--------------------
本来x 和 y都是指向同一个引用的
你在执行y=150的时候y指向了另外一个引用(150)
所以x是100
y是150
------解决方案--------------------
看到LZ的问题,我也有些疑问.其实我以前思想很简单的,,就是把他们看成int,只不过是多了一些可以调用的方法而已.一看LZ的说法,有点迷糊了.. 但是刚才我调试过你上面的程序..赋值运算都是对里面的value进行赋值,而且value前面有个小红方快上面有个F.. 引用类型的是传地址的吧,为什么y的值变了x没变呢?他们不是指向同一个地址的吗