什么???1000不等于1000!!!!!!!!!

tech2026-06-17  1

题目: Java中为什么"1000 == 1000"输出为false,而"100 == 100"输出则为true。 答: 1、首先如果不是用变量直接用数字比较时,结果都是true。

2、如果用int去定义变量,结果也是true。 3、当我们使用int的包装类Integer去定义时,1000则是false。 原因: 主要是因为Integer中有一个IntegerCache私有类,在里面缓存了[-128,127]的所有整数,当数值在这之中时就会从缓存中返回实例,返回同一个对象,所以是true。 IntegerCache类代码:

最新回复(0)