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

正在回答

3 回答

1 Arrays的方法sort()是按升序排序的

2 foreach只能从前往后遍历 所以要用for从后往前

3没有限制输出数量

4loop if 就没执行

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

//定义一个变量k 用来控制输出数量


int k=0;


for(int i=scores.length;i>=0;i--){


//Arrays的sort()方法是按升序排序的    输出的时候要从数组的末尾开始所以这里就不用foreach直接for


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


//break 是直接跳出for循环 所以这里要用continue 是跳过本次循环进入到下一次;


else if(k<3) {


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


k++;


}


//这里用k来控制循环 每输出一次k自加1  


else break; //当k自加三次后break  跳出for循环;


}


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

package lei;

import java.util.*;

public class zl{

public static void main(String[] args) {

System.out.println("考试成绩的前三名为:");

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

int arr[],a;

Arrays.sort(scores);

for(int i:scores)

{

loop: if(i<0||i>100){

break loop;

}

System.out.println(i);

}



}

}

为什么输出

考试成绩的前三名为:

-23

52

64

73

89

91

119


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

举报

0/150
提交
取消

用foreach,sort,loop if怎么做

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