自定义类要添加到TreeSet中比需实现comparable接口,

重写compareTo()方法。可以使用内部比较器

 

//内部比较器
public class Person implements Comparable<Person>{
    String name;
    int age;
    
    public Person(String name,int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public int compareTo(Person p) {
        
        if(this.age == p.age) {
            return this.name.compareTo(p.name);
        }
        
        return this.age - p.age;
    }










//添加到集合
import java.util.TreeSet;

public class InnerComparable {

    public static void main(String[] args) {
        TreeSet<Person> tree = new TreeSet<>();
        
        tree.add(new Person("angel", 18));
        tree.add(new Person("angle", 20));
        
        System.out.println(tree);
        //[_15集合.TreeSet.Person@70dea4e, _15集合.TreeSet.Person@5c647e05]
    }
}


    

 

版权声明:本文为itBulls原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/itBulls/articles/9039160.html