尽管值相同,为什么Java Wrapper类型引用却有所不同?

时间:2019-07-09 01:16:52

标签: java

这是由一个令人沮丧的错误引起的,在该错误中,使用Long而不是==比较两个对象的.equals(...)属性。两个长值是相同的128L。由于某些原因,即使值匹配,引用也不匹配,因此Long.valueOf(128L).equals(new Long(128L))返回true,而Long.valueOf(128L) == Long.valueOf(128L)返回false。为什么会这样?

编辑:

在过去,列表最多只能显示127个值时,此错误没有引起注意。我们一有128个,问题就浮出水面了

0 个答案:

没有答案