黑马程序员技术交流社区
标题:
Treeset知识点总结
[打印本页]
作者:
Zhouyongming
时间:
2016-4-2 18:48
标题:
Treeset知识点总结
TreeSet:
可以排序,去重复(Set),数据结构是二叉树
排序:1.实现 Comparable 接口
2:重写compareTo(T other)方法{
|--
int num = this.age - e.age;//年龄为主要条件
return num ==0 ? this.name.compareTo(e.name):num ;//名称为次要条件
}
例:list.add(new Student("周七",23));
谁被add进来就是谁调用,他就是this
compareTo返回的值是0,则不再存储当前元素
compareTo返回的值是负数,则倒序存储
compareTo返回的值是正数,则怎么存怎么取
TreeSet:1:实现 Comparable 接口
2:***比较器 Comparator <String>接口.. 重写compare方法
public int compare(String s1 ,String s2){
int length = s1.length() - s2.length(); //先比较字符串长度
return length == 0 ? s1.compareTo(s2):length;
}
**s1是add(s1) s2之前进来的元素
** TreeSet 比较排序时优先Comparator
new TreeSet<>(new Comparator<String>() {//匿名内部类
重写compare方法;
});
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2