Java.lang.String.hashCode() 方法

描述

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.tutorialspoint;

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 tutorialspoint";
    
      // 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