用foreach,sort,loop if怎么做

来源:7-1 编程练习

鹿先森和酒

2018-09-23 16:32

用foreach,sort,loop if怎么做

写回答 关注

3回答

  • 闲人_
    2018-09-26 20:31:45
    已采纳

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

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

    3没有限制输出数量

    4loop if 就没执行

  • 闲人_
    2018-09-26 20:32:17

    //定义一个变量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循环;


    }


  • 鹿先森和酒
    2018-09-23 16:34:12

    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


Java入门第一季(IDEA工具)升级版

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

1167352 学习 · 18629 问题

查看课程

相似问题