菜鸟飞呀飞
2015-07-25 14:01
import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
double arr[] = {89,-23,64,91,119,52,73};
HelloWorld hello = new HelloWorld();
hello.GetGrade(arr);
}
//定义方法完成成绩排序并输出前三名的功能
public void GetGrade(double array[]){
int count=0;
Arrays.sort(array);
for(int i=array.length-1;i<0;i--){
while(count<3){
if(array[i]>=0&&array[i]<=100){
System.out.println(""+array[i]);
count++;
}
}
}
}
非常感谢你提醒我了,改成这样也可以,不过我觉得上面那个i>array.length-3不太合适,因为并不能保证数组里的前3位成绩都是在[0-100]里面的,共勉共勉!
for(int i=array.length-1;i>0;i--){ if(count<3){ if((array[i]>=0)&&(array[i]<=100)){ System.out.println(""+array[i]); count++; } }
public void GetGrade(double array[]){ Arrays.sort(array); for(int i=array.length-1;i>=array.length-3;i--){ System.out.print(array[i] + " "); } }
你代码里的i<0就是一个逻辑错误了,还有你压根不需要在搞个while循环
Java入门第一季(IDEA工具)升级版
1165550 学习 · 17586 问题
相似问题