hashCode默认情况下表示的是内存地址,如果两个字符串的内容一致,那么返回的hashcode码值也是一样的。
Treeset注意事项:
1 往treeset添加元素的时候,如果元素本身具备了自然顺序的特性,那么就按照自然顺序的特性添加元素。
2 往treeset添加元素的时候,如果元素本身不具备了自然顺序的特性,那么该元素所属的类必须实现Comparable接口,把元素的比较规则定义在CompareTo(T o)方法上。
3 如果compareTo方法返回的为0,那么此元素被视为重复元素,不允许添加到集合中,(注意:Treeset与hashCode或者equals方法无关)
4.在Treeset添加元素的时候,如果元素本身不具备自然顺序的特性,且元素所属的类也没有实现Comparable接口,那么在创建Treeset的时候传入比较器
5 .在Treeset添加元素的时候,如果元素本身不具备自然顺序的特性,元素所属的类实现Comparable接口,并且在创建Treeset的时候也传入了比较器,那么是以比较器的比较规则优先使用。
如何自定义比较器,自定义一个类实现Compartor接口,并且实现compare方法,把元素与元素的比较规则定义在此方法内即可。