设计一个类Student: (1)属性包括姓名、学号和成绩 (2)方法,按照成绩从高到低的顺序输出姓名、学号和成绩信息。 编写测试类运行上面的方法。
package experimentSecond;
import java.util.Scanner;
class Student1 {
private String name;//姓名
private String id;//学号
private double score;//成绩
public Student1(String name, String id, double result) {//构造方法
this.name = name;
this.id = id;
this.score = result;
}
public static void sort(Student1[] stus) {//数组方法
Student1 temp;
for (int i = 0; i<stus.length-1;i++) {//冒泡比较
for (int j=0;j<stus.length-i-1;j++) {
if (stus[j].score < stus[j+1].score) {
temp=stus[j];
stus[j]=stus[j+1];
stus[j+1]=temp;
}
}
}
}
//输出内容
public void show() {
System.out.println("姓名:"+ name +"\t学号:"+id +"\t\t成绩:"+ score);
}
}
public class Student{
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.print("请输入要录入的学生个数:");
int numStudent=input.nextInt();
Student1[] stus = new Student1[numStudent];
Student1 student = null;
//录入学生信息
System.out.println("按要求输入学生信息");
for(int i=0;i<numStudent;i++) {
System.out.print("依次输入第"+(i+1)+"个学生的姓名学号成绩:");
stus[i]=new Student1(input.next(),input.next(),input.nextDouble());
}
//调用排序方法
student.sort(stus);
System.out.println("成绩录入完成,下面将按成绩的降序排序输出学生信息");
System.out.println("------------------------------------------------------");
//按成绩降序输出学生信息
for (Student1 stu : stus) {
stu.show();
}
}
}