定义一个Student类,属性为 学号,姓名,年龄,成绩,往List集合中存入5个Student对象,并使用Collections对集合排序,要求按照学生成绩降序排序,并输出排序后的List
package com.qidian.jch.ex5;
public class Student implements Comparable<Student>{
private String num,name;
private int old,fraction;
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getOld() {
return old;
}
public void setOld(int old) {
this.old = old;
}
public int getFraction() {
return fraction;
}
public void setFraction(int fraction) {
this.fraction = fraction;
}
public Student(String num,String name,int old,int fraction){
this.num = num;
this.name = name;
this.old = old;
this.fraction = fraction;
}
public int compareTo(Student s) {
// int compareTo(T o)将此对象与指定的对象进行比较以进行排序。 返回一个负整数,零或正整数,因为该对象小于,等于或大于指定对象。
return s.getFraction() - this.getFraction();
}
public String toString(){
return "Student{" +
"num='" + num + '\'' +
", name='" + name + '\'' +
", olf=" + old +
", fraction=" + fraction +
'}';
}
}
这里使用接口collection
package com.qidian.jch.ex5;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
ArrayList<Student> students = new ArrayList<>();
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
Student student1 = new Student(sc.next(), sc.next(), sc.nextInt(), sc.nextInt());
students.add(student1);
}
Collections.sort(students);
for (Student student : students) {
System.out.println(student);
}
}
}