機能を見ていましたString.hashcode()
。次のように定義されています。
このメソッドは、この文字列のハッシュ コードを返します。String オブジェクトのハッシュ コードは次のように計算されます。
s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
int 演算を使用するs[i]
と、 は文字列の i 番目の文字、n は文字列の長さ、^ は累乗を示します。(空の文字列のハッシュ値はゼロです。)
ここでの質問はs[0]
、文字列の 0 番目の文字またはむしろ n 番目の文字を指します。しかし、ハッシュコードの計算に使用されるのはその文字の int 値ですか?