import java.util.Arrays;
public class HelloWorld {
//完成 main 方法
public static void main(String[] args) {
int[] grades={89 , -23 , 64 , 91 , 119 , 52 , 73};
HelloWorld hello=new HelloWorld() ;
hello.third(grades);
}
//定义方法完成成绩排序并输出前三名的功能
public void third(int[] names){
Arrays.sort(names);
System.out.println("考试成绩的前三名为:");
for(int i=names.length-1;i>=0;i--){
int count=0;
if(names[i]<0||names[i]>100)
continue;
count++;
if(count<3)
break;
}
System.out.println(names[i]);
}
}
给出提示:/85/1598/EyuC/HelloWorld.java:24: error: cannot find symbol
System.out.println(names[i]);
^
symbol: variable i
location: class HelloWorld
1 error
咋回事
把你的System.out.println(names[i]);
放到break;的位置 break;就不要了
毛病在这,
if(names[i]<0||names[i]>100)
continue;
count++; ===> else { count++
return names[i];
if( count >= 3){
break;
}
if(count<3)
break;
}
System.out.println(names[i]);
因为你的变量生命和你的判断有点不太搭,循环第一遍的时候count=1,你判断的直接跳出循环了,改改你的判断条件试试
int count=grades.length-1;
count--;
System.out.println(names);