幫忙下,謝謝
import java.util.Arrays;
public class HelloWorld {
? ??
? ? //完成 main 方法
? ? public static void main(String[] args) {
? ? ? ? int[] scores={89,-23,64,91,119,52,73};
? ? ? ? HelloWorld hello=new HelloWorld();
? ? ? ? hello.Score(scores);
? ? ? ??
? ? }
? ??
? ? //定義方法完成成績排序并輸出前三名的功能
? ? public void Score(int[] scores){
? ? ? ? Arrays.sort(scores);
? ? ? ? int count=0;
? ? ? ? for(int i=scores.length;i>=0;i--){
? ? ? ? ? ? if(scores[i]<0||scores[i]>100){
? ? ? ? ? ? ? ? continue;
? ? ? ? ? ? }
? ? ? ? ? ? count++;
? ? ? ? ? ? if(count>3){
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? System.out.println(scores[i]);
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ??
?
哪里錯了,求大神幫下忙
2016-03-20
int i=scores.length
這個地方的下標最大是scores.length-1
2016-03-20
public class HelloWorld {
???
??? //完成 main 方法
??? public static void main(String[] args) {
??? int []scores = {89,-23,64,91,119,52,79};???
???
??? System.out.println(" 本次考試前三名是:");
??? HelloWorld hello = new HelloWorld();???????
??? hello.big3(scores);???
???????
???????
??? }
???
??? //定義方法完成成績排序并輸出前三名的功能
???
???
????? public void big3(int [] scores)
??? {
??????? Arrays.sort(scores);
??????? int num = 0;
??????? for(int i = scores.length-1;i>=0&&num<3;i--)
??????? {
??????????? if(scores[i]<0||scores[i]>100)
??????????????? continue;
??????????? num++;
??????????? System.out.println(scores[i]);
??????? }
??? }
???