如果需要把一个对象作为 key 添加到 HashMap 之中,那么这个对象所对应的类必须至少重载 Object 的哪些方法?

    1332 次浏览
    • A、hashCode 和 clone
    • B、equals 和 clone
    • C、hashCode 和 equals
    • D、hashCode、equals 和 clone
    将对象作为key添加到HashMap中,这个对象所对应的类需要重载hashCode()和equals()两个方法。 因为在HashMap中,查找key的顺序为: 1.计算对象的HashCode,检查其在表中是否存在; 2.检查对应HashCode位置中的对象和当前对象是否相等。 如果没有进行重载,在HashMap中查找key时会默认调用Object类的hashCode()和equals()这两个方法,即根据对象地址计算hash code,根据对象地址进行比较。如果需要利用对象里的值来进行比较,就要重载这两个方法。
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前
    挑战失败
    2年前