gpt4 book ai didi

java - 为什么 java 不从用户定义的类中执行覆盖的 hashcode() 方法?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:54:19 25 4
gpt4 key购买 nike

<分区>

即使重写,在将对象作为Key放入hashmap之前计算对象的hash时,它仍然引用Object类中的hashcode方法并赋予一些int值。

我重写了一种方法,它只会为所有对象返回相同的值以测试哈希码,但每次它都从 Object 类的哈希码方法中获取值,该方法是用 native 语言实现的。

如果它不是从用户定义的类中执行覆盖的哈希码方法,那么实现哈希码的目的是什么?

public class Product { 
public String name ;
public int id;
public int hashcode(){ int result = 1; return result; }
}

理想情况下,所有产品对象的哈希码都是 1,但我得到的是 952115109540724846...这是为什么??

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com