hash从意义上来说应该是实现值的比较。 hashCode值与对象引用没有必然联系。在java中,值相同的两个字符串不一定是同个对象。比如你上面的a和b就是两个不同的对象。 字符串的hash值是根据字符串的值计算的,相同值的字符串对象hash值一定相同