当我们尝试使用打印任何对象时,toString()
我们会得到 HashCode(如果toString()
没有被覆盖)。但是,如果我想打印字符串变量的哈希码,我该怎么办。这个问题是关于Java的。
问问题
2781 次
4 回答
8
只需调用hashCode()
对象String
:
String s = "Hello World";
System.out.println(s.hashCode());
如果您希望它采用与 相同的格式Object.toString()
,请尝试以下操作:
System.out.println(Integer.toHexString(s.hashCode()));
于 2012-08-28T13:54:53.733 回答
2
hashCode()
您可以通过调用该方法获取任何 Java 对象的哈希码。结果将是int
您可以打印或使用它做任何其他事情。
如果您对 的实现感兴趣,Object.toString
很容易在grepcode中查看。它说:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
于 2012-08-28T13:54:48.000 回答
2
System.out.println("Some String".hashCode());
于 2012-08-28T13:55:00.583 回答
1
只需调用该hashcode()
方法。它来自Object
.
String str = "mystring";
System.out.println(str.hashCode());
于 2012-08-28T13:55:31.763 回答