悠然_
2019-02-17 21:36
import java.util.Arrays;
public class HelloWorld
{
//完成 main 方法
public static void main(String[] args)
{
HelloWorld hello=new HelloWorld();
int[] scores={89,-23,64,91,119,52,73};
hello.num(scores);
System.out.println("考试成绩的前三名为:");
}
//定义方法完成成绩排序并输出前三名的功能
public void num(int[] scores)
{
Arrays.sort(scores);
int x=0;
for(int i=scores.length;i>=0;i--)
{
if(scores[i]>100||scores[i]<0)
{continue;}
if(scores[i]<=100&&scores[i]>=0)
{x++;}
if(x>3)
{ break;}
System.out.println(scores[i]);
}
}
}
索引大于数组大小。 scores.length 改为scores.length-1就行了;
for(int i=scores.length;i>=0;i--)
这行代码里面int i = scores.length 改为 int i = scores.length-1;
不然会超出数组最大值而出错,数组是从0开始数的。
for循环那里i忘记减1了
Java入门第一季(IDEA工具)升级版
1165172 学习 · 17581 问题
相似问题