java中调用object的哈西算法来算内容相同的对象,算出来的哈西值一定相同吗,为什么?

解决方案 »

  1.   

    首先hashcode()方法主要在方法是确定对象的内存地。址的不被重写的前提下,只要对象相等,哈希值就相等。然后你说的对象的内容相等,哈希值就相等,这种情况也有的,比如String类型,String类重写了hashcode方法,String类对象的hashcode只与字符串的内容有关,字符串内容相同,hashcode就一定相同。这是我的理解,如果有不对的,请指正,共同进步。
      

  2.   

    首先一般情况下,不同对象的hashcod肯定是不同的(String类型除外,因它重写了hashCode()方法)。也就是说在不重写hashcode方法的情况下,不同对象的hashcode是不同的。想要内容相同的对象的hashcode相同得要重写hashcode方法
      

  3.   

    据我之前在学校中所学的-->>>hashcode相等equals不一定相等,而equals相等的hashcode必然要相等