字符串的哈希码

时间:2012-08-28 13:53:37

标签: java string object

当我们尝试使用toString()打印任何对象时,我们得到HashCode(如果toString()未被覆盖)。但是,如果我想打印字符串变量的Hashcode,我该怎么办。 这个问题与Java有关。

4 个答案:

答案 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());