所有整型包装类对象值的比较必须使用equals方法。

先看下面这个例子:

Integer x = 3;
Integer y = 3;
System.out.println(x == y);// true
Integer a = new Integer(3);
Integer b = new Integer(3);
System.out.println(a == b);//false
System.out.println(a.equals(b));//true

当使用自动装箱方式创建一个Integer对象时,当数值在-128 ~127时,会将创建的 Integer 对象缓存起来,

当下次再出现该数值时,直接从缓存中取出对应的Integer对象。

所以上述代码中,x和y引用的是相同的Integer对象。

相关文章:

  • 2022-12-23
  • 2021-07-10
  • 2022-02-24
  • 2021-11-07
  • 2021-04-11
  • 2021-05-23
  • 2022-02-02
  • 2021-11-03
猜你喜欢
  • 2021-07-26
  • 2022-12-23
  • 2021-06-25
  • 2021-04-24
  • 2021-11-05
  • 2021-10-03
  • 2021-10-25
相关资源
相似解决方案