update Java 基础.md

This commit is contained in:
yuzhenzero 2019-06-17 19:29:08 +08:00
parent e0a76292f2
commit 210693cdbe

View File

@ -879,7 +879,7 @@ hashCode() 返回散列值,而 equals() 是用来判断两个对象是否等
在覆盖 equals() 方法时应当总是覆盖 hashCode() 方法,保证等价的两个对象散列值也相等。 在覆盖 equals() 方法时应当总是覆盖 hashCode() 方法,保证等价的两个对象散列值也相等。
下面的代码中,新建了两个等价的对象,并将它们添加到 HashSet 中。我们希望将这两个对象当成一样的,只在集合中添加一个对象,但是因为 EqualExample 没有实现 hasCode() 方法,因此这两个对象的散列值是不同的,最终导致集合添加了两个等价的对象。 下面的代码中,新建了两个等价的对象,并将它们添加到 HashSet 中。我们希望将这两个对象当成一样的,只在集合中添加一个对象,但是因为 EqualExample 没有实现 hashCode() 方法,因此这两个对象的散列值是不同的,最终导致集合添加了两个等价的对象。
```java ```java
EqualExample e1 = new EqualExample(1, 1, 1); EqualExample e1 = new EqualExample(1, 1, 1);