识别集合中的重复项

时间:2015-07-27 20:27:12

标签: java set duplicates

一组如何知道输入的值是重复的?我知道set忽略了重复的值,但它怎么知道重复的值呢?

1 个答案:

答案 0 :(得分:0)

首先搜索集合中输入的值。如果搜索返回该组的元素等于输入的值,则不会插入该元素。

此搜索的执行方式取决于Set实施。简单地说,即HashSet将使用输入值的hashCode()方法在其基础数组中查找存储桶,然后输入值equals()方法来检查驻留在该存储桶上的元素之间的相等性。对于TreeSet,使用Comparator

简而言之,搜索Set是否包含值的算法取决于其实现。