在hashset集合中:如果元素的HashCode值相同,才会判断equals是否为true。 如果元素的hashcode值不同,不会调用equals。
在判断元素存在及增删操作时,依赖的方法是元素的hashcode和equals方法。要保证元素唯一就需要重写equals( ),hashcode( )。
TreeSet
排序时让元素自身具备比较性。元素需要实现Comparable接口,覆盖compareTo方法(元素的自然顺序)。
当元素自身不具备比较性时,或者具备的比较性不是所需要的。这时就需要让集合自身具备比较性,定义比较器,将比较器对象作为参数传递给TreeSet集合的构造函数。
定义一个类,实现Comparator接口,覆盖compare方法。
|