首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >500 != 500 java整数请解释

500 != 500 java整数请解释
EN

Stack Overflow用户
提问于 2020-09-17 03:43:08
回答 1查看 395关注 0票数 1
代码语言:javascript
复制
public class Demo{
 public static void main(String[] arr){
      Integer num1 = 100;
      Integer num2 = 100;
     Integer num3 = 500;
     Integer num4 = 500;
     System.out.println(num3==num4);
     if(num1==num2){
         System.out.println("num1 == num2");
      }
     else{
         System.out.println("num1 != num2");
     }
     if(num3 == num4){
         System.out.println("num3 == num4");
     }
     else{
         System.out.println("num3 != num4");
     }
  }
}

交单:

代码语言:javascript
复制
false
num1 == num2
num3 != num4`

为什么第二个if语句(num3 == num4)是假的,其中两个数字的值都相同,请解释。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-17 03:44:58

整数是一个对象,需要使用equals进行比较。直接==是比较是否指向同一对象的引用,这不是您想要实现的。关于num1 == num2,请查看this链接以获得详细信息。为了在Java中节省内存,小的数字是临时的。因此,当比较num1num2时,它们实际上是引用同一个对象。而num3num4则分别指独立对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63930948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档