用java写一个学生类,对总成绩降序排列输出并打印名次
刚开始学java,只能写到下面那样了,输出名次完全没有思路,排序也感觉怪怪的,有没有大佬能够指点一下QAQ
import java.util.Arrays;
public class Student {
public String name;
public int xuehao,mingci;
public double a1,a2,a3;
Student(int xuehao,String name,double a1,double a2,double a3){
this.xuehao=xuehao;
this.name=name;
this.a1=a1;
this.a2=a2;
this.a3=a3;
}
double sum(){
return(this.a1+this.a2+this.a3);
}
}
public class Test {
public static void main(String[] args){
Student student[]=new Student[5];
double s[]=new double[5];
student[0]=new Student(20160001,"学生一",85,72,95);
student[1]=new Student(20160002,"学生二",87,88,92);
student[2]=new Student(20160003,"学生三",20,60,56);
student[3]=new Student(20160004,"学生四",99,94,56);
student[4]=new Student(20160005,"学生五",100,100,100);
for(int j=0;j<5;j++){
s[j]=student[j].sum();
}
Arrays.sort(s);
for(int j=4;j>=0;j--){
for(int i=0;i<5;i++){
if(student[i].sum()==s[j])
System.out.println(student[i].xuehao+" "+student[i].name+" "+student[i].a1+" "+
student[i].a2+" "+student[i].a3+" 总分:"+student[i].sum());
}
}
}
}
相关推荐
java实现给出分数数组得到对应名次数组的方法
主要介绍了java实现给出分数数组得到对应名次数组的方法,涉及java针对数组的遍历、排序及运算的相关技巧,需要的朋友可以参考下
JAVA基于Arrays.sort()实现数组升序和降序
主要介绍了JAVA基于Arrays.sort()实现数组升序和降序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
java 实现Comparable接口排序,升序、降序、倒叙
主要介绍了java 实现Comparable接口排序,升序、降序、倒叙,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
java学生成绩录入实例
import java.util.*; public class demo { /** * Method main * * * @param args * */ public static void main(String[] args) { // TODO: Add your code here Scanner sc=new Scanner(System.in); int num=0; ArrayList arr=new ArrayList ();boolean zt=false; while(true){ if(zt==false){ System.out.println("1.输入数据");} else{System.out.println("1输入数据 0显示");} int input=sc.nextInt(); if(input==0 && zt==true) { break; }zt=true; student stu=new student(); System.out.println("请输入学号"); 。。。。。。
JAVA 键盘录入学生成绩,排序后输出
JAVA 键盘录入学生成绩,排序后输出,set中自定义排序规则。


Eclipse
