Java String hashCode()方法返回字符串的哈希碼。
字符串hashCode()方法的語法為:
string.hashCode()
在這里,string是String該類的一個對象。
不帶任何參數(shù)
返回字符串的哈希碼,它是一個int值
哈希碼使用以下公式計算:
s[0]*31(n-1) + s[1]*31(n-2) + ... + s[n-1]
哪里,
s[0] 是string的第一個元素s,s[1]是第二個元素,依此類推。
n - 是字符串的長度
class Main { public static void main(String[] args) { String str1 = "Java"; String str2 = "Java Programming"; String str3 = ""; System.out.println(str1.hashCode()); // 2301506 System.out.println(str2.hashCode()); // 1377009627 // hash code of empty string is 0 System.out.println(str3.hashCode()); // 0 } }
哈希碼是從任何對象生成的數(shù)字(對象的內(nèi)存地址),而不僅僅是字符串。 此數(shù)字用于在哈希表中快速存儲/檢索對象。
為了使兩個字符串相等,它們的哈希碼也必須相等。