当我们尝试使用toString()
打印任何对象时,我们得到HashCode(如果toString()
未被覆盖)。但是,如果我想打印字符串变量的Hashcode,我该怎么办。
这个问题与Java有关。
答案 0 :(得分:8)
只需在hashCode()
对象上调用String
:
String s = "Hello World";
System.out.println(s.hashCode());
如果您希望其格式与Object.toString()
相同,请尝试以下操作:
System.out.println(Integer.toHexString(s.hashCode()));
答案 1 :(得分:2)
您可以通过调用hashCode()
方法获取任何Java对象的哈希码。结果将是int
,您可以随后打印或执行其他任何操作。
如果您对Object.toString
的实施感兴趣,可以通过grepcode轻松查看。它说:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
答案 2 :(得分:2)
System.out.println("Some String".hashCode());
答案 3 :(得分:1)
只需调用hashcode()
方法即可。它来自Object
。
String str = "mystring";
System.out.println(str.hashCode());