為什么會出現(xiàn)這個問題?
Exception?in?thread?"main"?java.lang.ArrayIndexOutOfBoundsException:?7 at?HelloWorld.showTop3(HelloWorld.java:17) at?HelloWorld.main(HelloWorld.java:9) 考試成績的前三名為:
import java.util.Arrays;
public class HelloWorld {
??
? ? //完成 main 方法
? ? public static void main(String[] args) {
? ? System.out.println("考試成績的前三名為:");
? ? int[] scores = {89 , -23 , 64 , 91 , 119 , 52 , 73};
? ? HelloWorld hello = new HelloWorld();
? ? 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;
? ? ? ? ? ? }
? ? ? ? num++;
? ? ? ? if(num>3){
? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? ? ? System.out.println(scores[i]);
? ? ? ? }
? ? }}
2019-11-17
for循環(huán)里面應(yīng)該這樣寫for(int i=sores.length-1;i<sores.length;i--)應(yīng)該數(shù)組是從0開始的?? 所以i=數(shù)組的長度-1,
2019-10-23
數(shù)組下標(biāo)那里出錯了,for ( int i = scores.length - 1; i >= 0&& scoreNum<3; i-- ),i應(yīng)該從scores.length-1開始從后往前遍歷
2019-10-20
數(shù)組下標(biāo)從0開始,for循環(huán)中初始化i值為數(shù)組長度超界了,應(yīng)為scores.length-1