如果我更改HashSet中的Object会发生什么?

时间:2014-09-03 19:43:15

标签: java set equals hashset

我创建了一个名为Region的类,我将Region的实例存储在HashSet中。我使用HashSet,列表中没有相同的对象。区域的String名称在HashSet中应该是唯一的,所以我重写了equals方法。

我的问题:

如果我将具有不同名称的两个区域存储到HashSet中然后我使不同的名称相等(通过名称的setter)会发生什么?

这不重复。另一个问题是关于HashSets的相等HashSets,而不是关于HashSets中的相等对象。

1 个答案:

答案 0 :(得分:4)

  

如果在对象是集合中的元素时,以影响等于比较的方式更改对象的值,则不指定集合的​​行为。

- 设置Javadoc