![]() |
1
10
==运算符只比较引用。 JVM中的引用只是一个标准对象指针。这计算出单个32位或64位整数值(取决于平台)。 当您比较两个对象引用时,实际上只是比较两个32位或64位整数,如果它们相同,则等于相等。整数值是内存中的一个位置。 |
![]() |
2
3
因为一个引用只是一个数字,所以一个引用比较可以归结为仅仅比较两个数字。不需要哈希。 |
![]() |
3
2
这个
这个
|
![]() |
4
0
如果对象是同一对象,==运算符返回true。此处不能访问hashcode()或equals()。 请尝试确认:
要理解这一点,您首先应该知道,当自动装箱时,将缓存编号255。这意味着1的整数始终是相同的对象,但2000的整数始终是不同的对象。 实验表明,当对象相同时,==返回真。在“1”的情况下,它们是相同的数字,它返回true。但在“2000”的情况下,自动盒是不同的对象,所以它返回false。 实验还表明“==”不使用equals()或hashcode()。 希望这有帮助。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 3 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |