利用TreeSet类和java.lang.Comparable接口实现给对象集合排序
TreeSet继承关系
TreeSet排序规则
- 使用二叉树的原理对新add()的对象按照指定的顺序排序(升序、降序),每增加一个对象都会进行排序,将对象插入的二叉树指定的位置。
- Integer和String对象都可以进行默认的TreeSet排序,而自定义类的对象是不可以的,自己定义的类必须实现Comparable接口,并且覆写相应的compareTo()函数,才可以正常使用。
|
|
main方法12345678910111213141516171819public static void main(String[] args) { Set<Model> tree=new TreeSet<>(); Model m1=new Model(1,"1"); Model m3=new Model(3,"3"); Model m2=new Model(2,"2"); Model m5=new Model(5,"5"); Model m4=new Model(4,"4"); tree.add(m1); tree.add(m3); tree.add(m2); tree.add(m5); tree.add(m4); Iterator<Model> it=tree.iterator(); while(it.hasNext()){ System.out.print(it.next().getAge()+" "); }}
输出结果为11 2 3 4 5