我运行下面的代码的结果永远是“timeout”。自己也看不出毛病,请大神指点一下。
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.scoreTop3(scores);
    }
        
    //定义方法完成成绩排序并输出前三名的功能
    public void scoreTop3(int[] scores){
        Arrays.sort(scores);
        int count=0;
        for(int i=scores.length - 1;i>=0;i--){
            while(scores[i]<0||scores[i]>100){
                continue;
            }
        
            count++;
            if(count>3){
                break;
            }
            
            System.out.println(scores[i]);
        
    }
    
}
}//完成 main 方法
public static void main(String[] args) {
int[] scores={89,-23,64,91,119,52,73};
System.out.println("考试成绩前三名为:");
HelloWorld hello=new HelloWorld();
hello.scoreTop3(scores);
}
//定义方法完成成绩排序并输出前三名的功能
public void scoreTop3(int[] scores){
Arrays.sort(scores);
int count=0;
for(int i=scores.length - 1;i>=0;i--){
while(scores[i]<0||scores[i]>100){
continue;
}
count++;
if(count>3){
break;
}
System.out.println(scores[i]);
}
}
}
18行那里是要做if判断啊,写成while了,scores[i]一直是119,条件成立进入循环,接着continue又回到了while,所以死循环了。