Java牛角尖【010】: 当对象a.equals(b)时,a.hashCode == b.hashCode吗?
当然不是了,hashCode和equals方法都可以被重写的,如果重写了其中的一个,而没有重写另外一个, 这个结论明显是错误的。
代码如下:
运行结果如下:
当然,我们在重写equals方法时最好将hashCode方法也重写了,代码如下:
这样的话,题目的答案当然是对的。
当然不是了,hashCode和equals方法都可以被重写的,如果重写了其中的一个,而没有重写另外一个, 这个结论明显是错误的。
代码如下:
运行结果如下:
当然,我们在重写equals方法时最好将hashCode方法也重写了,代码如下:
这样的话,题目的答案当然是对的。