import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
int[] scores = {89,-23,64,91,119,52,73};
System.out.println("考试成绩前三名为:");
HelloWorld hello = new HelloWorld();
hello.show(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void show (int[] scores){
Arrays.sort(scores);
int num = 0;
for(int i=scores.length;i>=0;i--){
if(scores[i]<0||scores[i]>100){
continue;
}
num++;
if(num>3){
break;
}
System.out.println(scores[i]);
}
}
}
数组越界,
比如7个元素的数组arr。
arr[7]是数组角标越界的,只有arr[0]到arr[6];
你应该这么写反向循环, for(int i=scores.length - 1;i>=0;i--)