大神幫我看看 我這里那里寫錯了
import java.util.Arrays;
public class HelloWorld {
? ??
? ? //完成 main 方法
? ? public static void main(String[] args) {
? ? ? ? HelloWorld nimadan=new HelloWorld();
? ? ? ? int[]scores={89,-23,64,91,119,52,79};
? ? ? ? System.out.println("前三名成績?yōu)椋?);
? ? ? ? nimadan.sort(scores); ? ? ??
? ? ? ??
? ? ? ??
? ? }
? ??
? ? //定義方法完成成績排序并輸出前三名的功能
? ??
? ? public void sort(int[]scores){
? ? ? ? Arrays.sort(scores);
? ? ? ? int top3=0;
? ? ? ? for(int i=scores.length-1;i>=0;i++){
? ? ? ? ? ? if(scores[i]<0||scores[i]>100){
? ? ? ? ? ? ? ? continue;
? ? ? ? ? ? }
? ? ? ? ? ? top3++;
? ? ? ? ? ? if(top3>3){
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? ? ? System.out.println(scores[i]);
? ? ? ? }
? ? }
? ??
? ??
? ??
? ??
? ??
? ??
? ??
? ??
}
2015-07-15
Arrays.sort(scores);
? ? ? ? for(int i=scores.length-3;i<scores.length;i++){
? ? ? ? ? ? System.out.println(scores[i]);
? ? ? ? }
這樣寫就OK了
2015-07-15
?for(int i=scores.length-1;i>=0;i++)這個循環(huán)條件不對,你這一初始化i=6,進行Arrays.sort排序后,
scores[6]=119,執(zhí)行continue;過入下一次循環(huán),此時i=7,score[7]根本不存在,所以報錯