您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

递增Integer变量不会影响另一个引用同一对象的变量

递增Integer变量不会影响另一个引用同一对象的变量

由于test引用counter

这个假设是错误的。在Java中,您不能引用变量。变量中存储的是一个值。该值可以是原始类型值或引用类型值。对于基元,值是基元的值。对于引用类型,

引用值(通常只是引用)是指向这些对象的指针,还有一个特殊的空引用,它不引用任何对象。

int a = 0;
int b = a;

计算该变量a以产生一个0,并将该值存储在中b

Integer a = 0;
Integer b = a;

0转换为Integer直通Integer.valueOf(int)和值,将对Integer对象的引用存储在中a。然后a进行评估,生成对该Integer对象的引用的值,并将该值存储在中b

同样,变量static是无关紧要的事实。

解决此问题的唯一方法test手动更新,即

counter++; 
test = counter;
其他 2022/1/1 18:14:58 有481人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶