行业知识
Java Sort 方法的使用(包含Arrays.sort(),Collections.sort()以及Comparable,Comparator的使用 )
2026-10-31 15:14:57
来源:互联网转载
目录
Comparable && Comparator的使用:
Comparable:
Comparator:
Arrays.sort()的使用:
升序排序:
降序排序:
自定义排序方法:
在日常的刷题或开发中,很多时候我们需要对数据进行排序,以达到我们的预期效果的作用。那么这些排序方法具体怎么实现和使用呢?本文就来好好缕一缕,总结一下这些方法:
Comparable && Comparator的使用:
Comparable:
当我们对类中的对象进行比较时,要保证对象时可比较的,这时我们就需要用到Comparable 或 Comparator接口,然后重写里面的compareTo()方法。假设我们有一个学生类,默认需要按照学生的年龄age排序,具体实现如下:
class Student implements Comparable{ private int id; private int age; private String name; public Student(int id, int age, String name) { this.id = id; this.age = age; this.name = name; } @Override public int compareTo(Student o) { //降序 //return o.age - this.age; //升序 return this.age - o.age; } public int getId() { return id; } public void setId(int id) { this.id = id; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Student{" + ", age=" + age + ", name='" + name + '\'' + '}'; }} 这里说一下 public int compareTo(Student o) 方法,它返回三种 int 类型的值: 负整数,零 ,正整数:
| 返回值 | 含义 |
| 正整数 | 当前对象的值 > 比较对象的值,升序排序 |
| 零 | 当前对象的值 = 比较对象的值,不变 |
| 负整数 | 当前对象的值 |