我必须比较两个Integer
对象(不是int
)。比较它们的规范方法是什么?
Integer x = ...
Integer y = ...
我能想到这个:
if (x == y)
该==
运算符仅比较引用,因此这仅适用于较低的整数值。但也许自动装箱开始了......?
if (x.equals(y))
这看起来像一个昂贵的操作。有没有以这种方式计算的哈希码?
if (x.intValue() == y.intValue())
有点啰嗦...
编辑:感谢您的回复。尽管我现在知道该做什么,但事实分布在所有现有答案(甚至已删除的答案上:)),我真的不知道该接受哪一个。所以我会接受最好的答案,它指的是所有三种比较可能性,或者至少是前两种。