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];????????????????????????????????????????????????????????????????????//這句老報(bào)錯(cuò)呢,在eclipse上,運(yùn)行前沒(méi)有錯(cuò)誤,運(yùn)行之后會(huì)出現(xiàn)錯(cuò)誤?????/*?錯(cuò)誤如下:考試成績(jī)第1名分?jǐn)?shù)為91*考試成績(jī)第2名分?jǐn)?shù)為89*考試成績(jī)第3名分?jǐn)?shù)為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("考試成績(jī)第"+num+"名分?jǐn)?shù)為"+score[i]);???}???else if(num<=2)????continue;???else {????break;???}??}?}?public void valid(int a){??if(a>=0&&a<=100)???System.out.println("成績(jī)"+a+"有效");??else???System.out.println("成績(jī)"+a+"無(wú)效");?}}
2 回答
已采納

快樂(lè)的時(shí)光
TA貢獻(xiàn)79條經(jīng)驗(yàn) 獲得超48個(gè)贊
? int max[]=new int[3];這一句出現(xiàn)問(wèn)題
89,-23,64,91,119,52,73 ? ?除開-23,119無(wú)效還剩5個(gè)
有效的數(shù)字是5個(gè),所以你的數(shù)組給的空間少了一個(gè) 把那個(gè)3改成4就好了。
希望能夠?qū)δ阌兴鶐椭?。謝謝

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

晨習(xí)
TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
num 的值給個(gè)條件,小于等于數(shù)組的length,就不會(huì)出現(xiàn)數(shù)組下標(biāo)越界的異常了
添加回答
舉報(bào)
0/150
提交
取消