慕妹0406788
2019-08-15 16:04
import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
System.out.println("考试前三名为:");
HelloWorld hello = new HelloWorld();
int[] scores = {89,-23,64,91,119,52,73};
hello.showTop3(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void showTop3(int[] scores){
Arrays.sort(scores);
int num = 0;
for(int i = scores.length; i >= 0 ;i--){
if(scores[i] < 0 || scores[i] > 100){
continue;
}
if(num > 3){
break;
}
System.out.println(scores[i]);
}
}
}
for(int i = scores.length; i >= 0 ;i--) 改为for(int i = scores.length-1; i >= 0 ;i--)
下标越界 scores.length=7 ,而数组下标只有0-6 执行第一次时就下包越界了
Java入门第一季(IDEA工具)升级版
1165552 学习 · 17587 问题
相似问题