Java String hashCode()

哈希码是由任何 对象(不只是 字符串)生成的数字(对象的内存地址)。此数字用于在哈希表中快速存储/检索对象。

字符串 hashCode() 方法的语法是

string.hashCode()

此处,stringString 类的一个对象。


hashCode() 参数

matches() 方法不接受任何参数。


hashCode() 返回值

  • 返回哈希码,它是一个 int 值,表示字符串的哈希码。

哈希码是使用以下公式计算的

s[0]*31(n-1) + s[1]*31(n-2) + ... + s[n-1]

其中,

  • s[0] 是字符串 s 的第一个元素,s[1] 是第二个元素,依此类推。
  • n 是字符串的长度

示例:Java String hashCode()

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

  }
}

注意:要使两个字符串相等,它们的哈希码也必须相等。


另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战