TreeSet排序的第一种方式:
让元素自身具备比较性,元素需要实现Compareable接口,覆盖compareTo方法,这种顺序也叫自然顺序,也叫默认顺序。
TreeSet集合的第二种排序方式:
当元素自身不具备比较性时,或者具备的比较性不是所需要的,这时需要让集合自身具备比较性。
int equals(Object o) 和boolean hashCode() 是接口Collection<E>的方法,所有的集合都继承自Collection,Set集合里的元素是唯一的,Map集合里的键是唯一的,要想保证Set和Map里的元素唯一,原理是判断元素的hashcode是否相同,如果相同,还会继续判断元素的equals方法,是否为true。
|