如果你执行:
System.out.println(someObj.toString());
Run Code Online (Sandbox Code Playgroud)
你可能看到输出像
someObjectClassname @ hashcodenumber
我的问题:有什么特定的原因可以显示hashCode编号吗?
thk*_*ala 34
对象哈希码是唯一可以允许您在Java中区分不同任意对象的标准标识符.它不一定是唯一的,但是相等的对象通常具有相同的哈希码.
默认toString()方法显示对象类及其哈希代码,以便您可以将不同的对象实例区分开来.由于默认情况下它也在错误消息中使用,因此这非常有意义.
有关更多信息,请参阅hashCode()方法的说明.
Sai*_*S.R 12
添加有用的东西.
一些新手可能会混淆为什么返回的hascode值与返回的值toString()
不同hashCode().这是因为该toString()方法返回相同哈希码的十六进制表示.
Integer.toHexString(object.hashCode());将返回返回的相同值object.toString().
| 归档时间: |
|
| 查看次数: |
31970 次 |
| 最近记录: |