58,454
社区成员
发帖
与我相关
我的任务
分享
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Outputproblem {
private static ArrayList<Student> studentList = new ArrayList<>();
public static void main(String[] args) {
// 1,初始化学生信息
initstudentinfo();
// 2,输出所有学生的基本信息;
outputstudent();
// 3,输出总分成绩在前五名的学生姓名;
outputTop5();
// 4,学生数学成绩按从高到低排序,输出排序结果
outputRank();
}
private static void outputRank() {
System.out.println("==============数学成绩排序==============");
Collections.sort(studentList, new Comparator<Student>(){
@Override
public int compare(Student o1, Student o2) {
return (int) (o2.shuXue - o1.shuXue);
}});
for (Student student : studentList) {
System.out.println(student.toString());
}
}
private static void outputTop5() {
System.out.println("==============总分前五==============");
Collections.sort(studentList, new Comparator<Student>(){
@Override
public int compare(Student o1, Student o2) {
return (int) ((o2.yuWen + o2.shuXue) - (o1.yuWen + o1.shuXue));
}});
for (int i = 0; i < 5; i++) {
System.out.println(studentList.get(i).toString());
}
}
private static void outputstudent() {
for (Student student : studentList) {
System.out.println(student.toString());
}
// TODO Auto-generated method stub
}
private static void initstudentinfo() {
studentList.add(new Outputproblem().new Student(1, "小明", "男", 15, 85, 35));
studentList.add(new Outputproblem().new Student(2, "小红", "女", 14, 68.5f, 80));
studentList.add(new Outputproblem().new Student(3, "小王", "男", 16, 93, 70));
studentList.add(new Outputproblem().new Student(4, "小陈", "女", 17, 43, 65));
studentList.add(new Outputproblem().new Student(5, "小李", "男", 16, 75.5f, 80));
studentList.add(new Outputproblem().new Student(6, "小刘", "男", 15, 81.5f, 90));
studentList.add(new Outputproblem().new Student(7, "小杨", "男", 16, 72.5f, 75));
studentList.add(new Outputproblem().new Student(8, "小江", "男", 14, 95, 100));
studentList.add(new Outputproblem().new Student(9, "小徐", "女", 16, 80.5f, 65));
studentList.add(new Outputproblem().new Student(10, "小赵", "男", 16, 70.5f, 99));
}
class Student{
int id;
String name;
String sex;
int age;
float yuWen;
float shuXue;
public Student(int id, String name, String sex, int age, float yuWen, float shuXue){
this.id = id;
this.name = name;
this.sex = sex;
this.age = age;
this.yuWen = yuWen;
this.shuXue = shuXue;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", sex=" + sex + ", age=" + age
+ ", yuWen=" + yuWen + ", shuXue=" + shuXue + "]";
}
}
}
结果
Student [id=1, name=小明, sex=男, age=15, yuWen=85.0, shuXue=35.0]
Student [id=2, name=小红, sex=女, age=14, yuWen=68.5, shuXue=80.0]
Student [id=3, name=小王, sex=男, age=16, yuWen=93.0, shuXue=70.0]
Student [id=4, name=小陈, sex=女, age=17, yuWen=43.0, shuXue=65.0]
Student [id=5, name=小李, sex=男, age=16, yuWen=75.5, shuXue=80.0]
Student [id=6, name=小刘, sex=男, age=15, yuWen=81.5, shuXue=90.0]
Student [id=7, name=小杨, sex=男, age=16, yuWen=72.5, shuXue=75.0]
Student [id=8, name=小江, sex=男, age=14, yuWen=95.0, shuXue=100.0]
Student [id=9, name=小徐, sex=女, age=16, yuWen=80.5, shuXue=65.0]
Student [id=10, name=小赵, sex=男, age=16, yuWen=70.5, shuXue=99.0]
==============总分前五==============
Student [id=8, name=小江, sex=男, age=14, yuWen=95.0, shuXue=100.0]
Student [id=6, name=小刘, sex=男, age=15, yuWen=81.5, shuXue=90.0]
Student [id=10, name=小赵, sex=男, age=16, yuWen=70.5, shuXue=99.0]
Student [id=3, name=小王, sex=男, age=16, yuWen=93.0, shuXue=70.0]
Student [id=5, name=小李, sex=男, age=16, yuWen=75.5, shuXue=80.0]
==============数学成绩排序==============
Student [id=8, name=小江, sex=男, age=14, yuWen=95.0, shuXue=100.0]
Student [id=10, name=小赵, sex=男, age=16, yuWen=70.5, shuXue=99.0]
Student [id=6, name=小刘, sex=男, age=15, yuWen=81.5, shuXue=90.0]
Student [id=5, name=小李, sex=男, age=16, yuWen=75.5, shuXue=80.0]
Student [id=2, name=小红, sex=女, age=14, yuWen=68.5, shuXue=80.0]
Student [id=7, name=小杨, sex=男, age=16, yuWen=72.5, shuXue=75.0]
Student [id=3, name=小王, sex=男, age=16, yuWen=93.0, shuXue=70.0]
Student [id=9, name=小徐, sex=女, age=16, yuWen=80.5, shuXue=65.0]
Student [id=4, name=小陈, sex=女, age=17, yuWen=43.0, shuXue=65.0]
Student [id=1, name=小明, sex=男, age=15, yuWen=85.0, shuXue=35.0]