[Java基础]自然排序Comparable的使用

Posted Wecccccccc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Java基础]自然排序Comparable的使用相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
代码如下:

package ComparablePack;


public class Student implements Comparable<Student>{
    private String name;
    private int age;

    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }


    @Override
    public int compareTo(Student s) {
        int num =  this.age-s.age;
        int num2 = num==0?this.name.compareTo(s.name):num;
        return num2;
    }
}

package ComparablePack;

import java.util.TreeSet;

public class TreeSetDemo01 {
    public static void main(String[] args)
    {
        TreeSet<Student> ts = new TreeSet<Student>();

        Student s1 = new Student("Tom",13);
        Student s2 = new Student("Jack",17);
        Student s3 = new Student("Lily",29);
        Student s4 = new Student("Jbck",17);
        Student s5 = new Student("Jack",17);

        ts.add(s1);
        ts.add(s2);
        ts.add(s3);
        ts.add(s4);
        ts.add(s5);

        for (Student s:ts)
        {
            System.out.println(s.getName()+","+s.getAge());
        }


    }

}

在这里插入图片描述

以上是关于[Java基础]自然排序Comparable的使用的主要内容,如果未能解决你的问题,请参考以下文章

尚硅谷_Java零基础教程(常用类——ComparableComparator)-- 学习笔记

面试----java基础集合---------------------comparable和comparator 的区别

java的comparable接口啥意思

java lang(Comparable接口) 和java util(Comparator接口)分析比较

Comparable接口与Comparator接口的比较————Comparable接口详解

Comparable