String对象的Hash值

地址值和Hash值没有关系:

  地址值是不同的;Hash值是会相同的。

String类继承Object

重写了父类方法hashCode(); 建立了自己的哈希值;

哈希值:和字符串的本质内容相关,和new内存地址无关。

计算方式:31 * 上一次计算的哈希值 + 字符ASCII码

【31是质数(除了1),用于降低哈希值的碰撞;尽量避免,字符不同,计算出来的哈希值是相同;

字符不同,有可能计算出相同的哈希值;ps:通话和重地的哈希值是一样的】

posted @ 2020-11-03 01:24  SimonShixinlong  阅读(1501)  评论(0)    收藏  举报