问答详情
源自:7-1 编程练习

数组排序 输出问题

老师您好

public class HelloWorld {

// 完成 main 方法

public static void main(String[] args) {

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

HelloWorld he = new HelloWorld();

he.put(scores);

}

// 定义方法完成成绩排序并输出前三名的功能

public void put(int[] bu) {

Arrays.sort(bu);

System.out.println(Arrays.toString(bu));

int num=0;

for (int i=0 ; i<bu.length; i++ ) {

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

continue;

}

num++;

if(num>3) {

break;

}

System.out.print(bu[i] + "  ");

}

结果为:

[-23, 52, 64, 73, 89, 91, 119]

52  64  73  

请问: -23 是满足第一个 if 条件的,然后继续 然后第二个if 不满足跳出,执行输出语句,

为什么-23 没有输出呢?


提问者:慕粉1124253375 2017-02-16 16:42

个回答

  • qq_墨凝朗瑜_0
    2017-02-16 17:24:38
    已采纳

    -23满足if(bu[i]<0 || bu[i]>100),执行continue,直接跳过System.out.print(bu[i] + "  ")

  • 抓娃小白手
    2017-02-16 19:29:00

    因为有continue语句,该语句的作用就是结束本次循环,直接进入下一次循环。