TreeSet
TreeSet是一个有序 没有重复元素的Set集合;
TreeSet中key 不能为空,value可以为null
TreeSet具有排序功能,支持2种排序方式: 自然排序或根据创建TreeSet时提供的 Comparator进行排序,取决于使用的构造方法
package com.jihe.Set.TreeSet_;
import java.util.Comparator;
import java.util.TreeSet;
public class TreeSet_01 {
public static void main(String[] args) {
TreeSet treeSet = new TreeSet();
/** 使用无参构造 默认升序输出 */
treeSet.add("a");
treeSet.add("b");
treeSet.add("e");
treeSet.add("h");
System.out.println(treeSet);
/** 还可以 运用 有参构造 */
TreeSet tree = new TreeSet(new Comparator() { //使用有参构造 传入一个 比较器(匿名内部类) 指定排序规则
@Override
public int compare(Object o1, Object o2) {
return ((String)o2).compareTo((String)o1);
/** 前者与后者 比较默认 升序 后者与前者比较,则为降序 */
}
});
tree.add("aa");
tree.add("ab");
tree.add("ac");
tree.add("ah");
System.out.println(tree);
TreeSet tree1 = new TreeSet(new Comparator() { //使用有参构造 传入一个 比较器(匿名内部类) 指定排序规则
@Override
public int compare(Object o1, Object o2) {
return ((Integer)o2).compareTo((Integer)o1);
/** 前者与后者 比较默认 升序 后者与前者比较,则为降序 */
}
});
tree1.add(50);
tree1.add(588);
tree1.add(23);
tree1.add(53);
System.out.println(tree1);
}
}