为了账号安全,请及时绑定邮箱和手机立即绑定

各位大佬,各位大佬大佬,大佬,大佬

import java.util.Arrays;

public class Demo{

    public static void main(String[] args) {

int[] scores= {89,-23,-64,91,119,52,73};

Demo abc=new Demo();

abc.hello(scores);

    }

    public void hello(int[] scores){

Arrays.sort(scores);

for(int i=scores.length-1,b=0;i>=0&&b<3;++i,++b) {

if(scores[i]>100||scores[i]<0) {

continue;

}

else {

System.out.println(scores[i]);

}

}

}

}


正在回答

1 回答

for循环里应该是 --i,因为前面i已经等于scores.length-1(下标最大值)了,++i的话就会抛出数组下标越界异常(ArrayIndexOutOfBoundsException)

0 回复 有任何疑惑可以回复我~
#1

Loveherk 提问者

谢谢大哥,我这个地方用b,在for循环也错了,这样的话,只会检索前三个数字。
2018-12-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165455    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

各位大佬,各位大佬大佬,大佬,大佬

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信