参考:https://blog.csdn.net/u013256816/article/details/50899416/
//将所有放入集合的整数正序排列
TreeSet<Integer> ts = new TreeSet<>(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
int result = o1.compareTo(o2);
return result == 0 ? 1 : -result;
}
});
ts.add(1);
ts.add(3);
ts.add(5);
ts.add(9);
以上代码,compare()方法的参数o1为新增参数,参数o2为set集合二叉树中的节点参数,详细举例如下:
执行
ts.add(1)
方法,compare()方法执行一次o1 = 1, o2 = 1
执行
ts.add(3)
方法,compare()方法执行一次o1 = 3, o2 = 1
执行
ts.add(5)
方法,compare()方法执行两次o1 = 5, o2 = 1
o1 = 5, o2 = 3执行
ts.add(9)
方法,compare()方法执行两次o1 = 9, o2 = 3
o1 = 9, o2 = 5