1

を使用してオブジェクトを印刷しようとするとtoString()、HashCode が取得されます (toString()オーバーライドされていない場合)。しかし、文字列変数のハッシュコードを出力したい場合、どうすればよいですか。この質問は Java に関するものです。

4

4 に答える 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

メソッドを呼び出すことで、任意の Java オブジェクトのハッシュ コードを取得できますhashCode()。結果はint、印刷したり、それを使って他のことをしたりできるようになります。

の実装に興味がある場合は、 grepcodeObject.toStringで簡単に確認できます。それは言います:

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 に答える