switch 执行所有 case 语句 [英] Switch executes all case statements

查看:127
本文介绍了switch 执行所有 case 语句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

谁能解释一下为什么我的循环从 0 到 7?我只需要在前 3 种情况下获取,但程序正在遍历所有.. 代码在 show() 方法中.

Can someone explain me why my loop is going from 0 to 7? I need to get only in the first 3 cases, but the program is going through all.. The code is in the show() method.

for(brojac=0; brojac<3; brojac++){

    switch(brojac){
    case 1:
        figura1.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura1);
        System.out.println("1");
    case 2:
        figura2.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura2);
        System.out.println("2");
    case 3:
        figura3.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura3);
        System.out.println("3");
    case 4:
        figura4.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura4);
        System.out.println("4");
    case 5:
        figura5.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura5);
        System.out.println("5");
    case 6:
        figura6.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura6);
        System.out.println("6");
    case 7:
        figura7.setPosition(pomx[random], pomy[random]);
        stage.addActor(figura7);
        System.out.println("7");

    }
}

推荐答案

因为缺少中断.在每种情况之后,您都需要 break 关键字.详细解释见switch语句java教程

Because the break is missing. After every case you need the break keyword. For a detailed explanation see switch statement java tutorial

例如

for(brojac=0; brojac<3; brojac++){

switch(brojac){
case 1:
    figura1.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura1);
    System.out.println("1");
    break; /// Break here

case 2:
    figura2.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura2);
    System.out.println("2");
    break; /// Break here
case 3:
    figura3.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura3);
    System.out.println("3");
    break; /// Break here
case 4:
    figura4.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura4);
    System.out.println("4");
    break; /// Break here
case 5:
    figura5.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura5);
    System.out.println("5");
    break; /// Break here
case 6:
    figura6.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura6);
    System.out.println("6");
    break; /// Break here
case 7:
    figura7.setPosition(pomx[random], pomy[random]);
    stage.addActor(figura7);
    System.out.println("7");
    break; /// Break here
}
}

否则,如果上述情况之一被评估为真,则其他情况将被执行.

Otherwise the other cases will be executed if one of the above cases gets evaluated to true.

这篇关于switch 执行所有 case 语句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆