0

假设我创建了一个名为 Time 的类,其构造函数采用 3 个参数。小时,分钟和秒。现在,我创建一个对象t1 = new Time(10, 10, 10);,然后创建另一个对象t2 = new Time(10, 10, 10)

现在我在哈希集中使用它们。

hashset.add(t1);
hashset.add(t2);

现在哈希集的大小为 2。如果对象的值相同,如何将其修改为大小 1?

例子:

void eradicateDuplicate(List<Time> list) {

  for (Time t : list) {
     hashSet.add(t);
   } 

}

我希望此代码消除所有具有相同值的重复时间对象吗?

谢谢,

4

2 回答 2

5

如果您实现方法#hashCode#equals在您的 Time 对象中,这将自动发生。

于 2013-08-04T23:41:16.343 回答
0

你不需要做任何事情。如果与第一个相同,则不会添加第二个。

于 2013-08-04T23:38:41.603 回答