遙遠的她丶
2015-07-15 10:58
import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
HelloWorld nimadan=new HelloWorld();
int[]scores={89,-23,64,91,119,52,79};
System.out.println("前三名成绩为:");
nimadan.sort(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void sort(int[]scores){
Arrays.sort(scores);
int top3=0;
for(int i=scores.length-1;i>=0;i++){
if(scores[i]<0||scores[i]>100){
continue;
}
top3++;
if(top3>3){
break;
}
System.out.println(scores[i]);
}
}
}
Arrays.sort(scores);
for(int i=scores.length-3;i<scores.length;i++){
System.out.println(scores[i]);
}
这样写就OK了
for(int i=scores.length-1;i>=0;i++)这个循环条件不对,你这一初始化i=6,进行Arrays.sort排序后,
scores[6]=119,执行continue;过入下一次循环,此时i=7,score[7]根本不存在,所以报错
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题