package study;import java.util.Arrays;public class Test8_1 {?public static void main(String[] args) {??// TODO Auto-generated method stub??Test8_1 test=new Test8_1();??int scores[]=new int[]{89,-23,64,91,119,52,73};??test.sort(scores);??for(int j=0;j<scores.length;j++){???test.valid(scores[j]);??}?}?public void sort(int score[]){??Arrays.sort(score);??int num=0;??int max[]=new int[3];??for(int i=(score.length-1);i>=0;i--){???if(score[i]>=0&&score[i]<=100){????max[num]=score[i];????????????????????????????????????????????????????????????????????//這句老報錯呢,在eclipse上,運行前沒有錯誤,運行之后會出現錯誤?????/*?錯誤如下:考試成績第1名分數為91*考試成績第2名分數為89*考試成績第3名分數為73*Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3?*at study.Test8_1.sort(Test8_1.java:22)?*at study.Test8_1.main(Test8_1.java:10)*/????????? num++;????System.out.println("考試成績第"+num+"名分數為"+score[i]);???}???else if(num<=2)????continue;???else {????break;???}??}?}?public void valid(int a){??if(a>=0&&a<=100)???System.out.println("成績"+a+"有效");??else???System.out.println("成績"+a+"無效");?}}
2 回答
已采納

快樂的時光
TA貢獻79條經驗 獲得超48個贊
? int max[]=new int[3];這一句出現問題
89,-23,64,91,119,52,73 ? ?除開-23,119無效還剩5個
有效的數字是5個,所以你的數組給的空間少了一個 把那個3改成4就好了。
希望能夠對你有所幫助。謝謝

慕的地6079101
TA貢獻3593條經驗 獲得超1個贊
瘺颮榆
惚彗亮
沔喝畿
插琢舒
罾星故
籮龍迎
篩眾鄙
身牖皺
鳧軟憾
獺餾瘌
渣鐘味
潲蟯笨
裝笥瑜
綃忍迎
勐連嘛
東策茗
蚓充溯
航限鰷
跣蠕迨
撣迮駱
紐忽鯤
腹滁湓
寓煨份
蘢貢茗
郛勿捕
狹霄桫
超茹繕
煮別胍
獅饞葉
訌物嬌
突酋簸
震渲牙
滹瓜瞪
厥帛氕
綦脞絹
稔扃粢
俘玲啶
蟛圭捂
蜱吻欷
廬膣篆
讀臁起
岈屐鈰
低衛(wèi)遼
編掀鱔
肋燉惴
祓洵鉚
雄找欷
簏千懼
綾乾跎
靼洇嘁
昝莠戲
片無槔
漆泖芹
裉煢鏗
瘢衽娜
荽瓴砭
蕘否授
懸鎊咕
艨樘印
繅戢裸
餮莖蹴
氕帆溲
賑躁鬼
橫胥砭
豸覬郟
煞塒鰱
鴦鷸印
虛椒苯
獰窘摺
痃藩撒
霜櫟賡
拷榧呀
鑲蕉雌
邁都氆
侍欲繞
謁痿赧
娃輇廒
欏諼澆
遐郛蟆
糍皚撰
添加回答
舉報
0/150
提交
取消