分析相同两个字符串对象的HashCode是不是相同,应该看看String类中复习的hashCode()方法
根据API:
public int hashCode()返回此字符串的哈希码。String 对象的哈希码根据以下公式计算:
s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] 使用 int 算法,这里 s 是字符串的第 i 个字符,n 是字符串的长度,^ 表示求幂。(空字符串的哈希值为 0。)
发现,你的两个字符串对象转换成字符数组之后,其数组中的每个元素都是相同的。
根据上边的计算公式可知,两个相同字符串的HashCod是相同的。
|