切换if if,else if,else,并在case内循环

Bub*_*ree 2 java

出于我的问题的目的,我只包括案例1,但其他案例是相同的.假设value当前为1,我们转到case 1,我们的for循环遍历数组,看看每个元素是否与whatever_value变量匹配.在这种情况下,如果确实如此,我们将value变量声明为等于2,并且我们将跳出循环.问题是,当我突出显示另一个中断(在eclipse中)时,它表示中断也附加到for语句,但我只希望将for语句附加到if语句,而不是else if语句好.我想因为for语句没有括号,它只会为if语句循环,但eclipse会另外说(否则如果从0循环到数组长度).

  switch (value) {
  case 1:
     for (int i = 0; i < something_in_the_array.length; i++)
        if (whatever_value == (something_in_the_array[i])) {
           value = 2;
           break;
        } else if (whatever_value == 2) {
           value = 3;
           break;
        } else if (whatever_value == 3) {
           value = 4;
           break;
        }
     break;
  case 2:

  // code continues....
Run Code Online (Sandbox Code Playgroud)

ebo*_*oix 7

你的问题.....我觉得是你的for循环包含所有的if,else if东西-这就像一个语句,像晃阮指出.

改为这个.需要注意的是表示for循环操作在其上的代码块和所述第一变化的括号else ifif.

switch(value){

    case 1:
        for(int i=0; i<something_in_the_array.length;i++) {
            if(whatever_value==(something_in_the_array[i])) {
                value=2;
                break;
             }
        }

        if(whatever_value==2) {
            value=3;
            break;
        }
        else if(whatever_value==3) {
            value=4;
            break;
        }
        break;


    case 2:

code continues....
Run Code Online (Sandbox Code Playgroud)