java.lang.String.hashCode() 方法返回該字串的雜湊碼。對於String物件的雜湊碼的計算方法為:
s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] 其中,s[i]為字串的第i個字元,n是字串的長度,^表示求冪
以下是java.lang.String.hashCode()方法的宣告
public int hashCode()
NA
此方法返回該物件的雜湊碼值。
NA
下面的例子顯示java.lang.String.hashCode()方法的使用。
package com.yiibai; import java.lang.*; public class StringDemo { public static void main(String[] args) { Integer i = new Integer(50); Long l = new Long(50); Float f = new Float(50); Integer i2 = new Integer(0); // hash codes of different objects with same value are always same System.out.println("Hash code of " + i + " is = " + i.hashCode()); System.out.println("Hash code of " + l + " is = " + l.hashCode()); // hash code for float value i.e different from Integer and Long System.out.println("Hash code of " + f + " is = " + f.hashCode()); // hash code value of number zero(0) is zero(0) System.out.println("Hash code of " + i2 + " is = " + i2.hashCode()); String str = "this is yiibai"; // hash code of string str System.out.println("Hash code of string is = " + str.hashCode()); } }
讓我們編譯並執行上述程式,這將產生以下結果:
Hash code of 50 is = 50 Hash code of 50 is = 50 Hash code of 50.0 is = 1112014848 Hash code of 0 is = 0 Hash code of string is = 643938959