自然排序 用到的是comparable接口
package day13;
import java.util.Arrays;
public class TestComparable {
public static void main(String[] args) {
Student wang=new Student();
wang.setScore(98);
Student li=new Student();
li.setScore(96);
Student zhang=new Student();
zhang.setScore(91);
Student [] students= {wang,li,zhang};
Arrays.sort(students);
Arrays.stream(students).forEach(System.out::println);
}
}
class Student implements Comparable<Student>{
private int score;
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public int compareTo(Student o) {
return -(this.score-o.score);
}
@Override
public String toString() {
return "分数:"+score;
}
}
需要对compareTo和toString方法进行重写。
compareTo()返回的正数就会排在前面 负数排在后面
toString方法需要重写,不然输出的是类名以及虚拟地址
Arrays.stream(students).forEach(System.out::println);
利用字符串流输出