equals方法用来比较两个对象是否相等。
hashCode和equals方法存在着以下联系:
equals的返回值能推导出hashCode的值是否相等,反之无法进行推导。
另外关于"equals返回true,则hashCode必须相等"这一说法是一个规定,是保证Hash相关数据结构和方法正常运行的前提,这就是为什么“重写equals方法必须重写hashCode方法”的原因,当然你也可以不重写,也能通过编译,但是你的代码就埋了一个炸弹,鬼知道什么时候会爆炸。关于这个炸弹的思考,我们可以参考:Boom