Как использовать метку в Java? - PullRequest
0 голосов
/ 03 мая 2018

Мне нужно помочь. Я хочу использовать метку в Java. Как метка в c, но goto не может использовать в java. Как перейти на ярлык в Java? Программа:

ulang:
switch (menu){
case 1 : input(); goto ulang;
break;
}

Как изменить код на код Java?

Ответы [ 4 ]

0 голосов
/ 03 мая 2018

Я не рекомендую использовать ярлыки (переход). (Только ради знаний) Ниже приведен фрагмент, который позволит вам понять то же самое. Break с label выведет вас из внешнего цикла, в котором есть метка.

label: for( initialization ; condition ; modification ){

    for( initialization ; condition ; modification ){
        if(condition){
            break label;
        }
    }

}
0 голосов
/ 03 мая 2018

просто используйте цикл, если вы хотите сделать повтор

do{
   /* code to display your menu here */
   switch(pilih){
      case 1 : input();break;
      case 2 : ..../*continue with your other selection*/
   }

}while(pilih!=5) // assume 5 is the exit choice
0 голосов
/ 03 мая 2018

Java не поддерживает goto. Хотя вы можете использовать помеченные break и continue во вложенных циклах и операторах switch, они просто сообщают компилятору, на какой блок кода вы ссылаетесь, а не переходят к этому месту. Например, вы можете написать:

ulang:
switch(menu) {
case 1: input(); break ulang; // break the switch labelled by 'ulang'
}

Но это так же, как

switch(menu) {
case 1: input(); break;
}
0 голосов
/ 03 мая 2018

В Java нет goto. Я предлагаю использовать петли.

while (true) {
  switch (menu){
    case 1 : input(); continue;
    break;
  }
  break;
}

Сильфон не работает в Java, как я ожидал, он делает помеченный оператор switch и break + label breaks switch , не переходит к ярлык (спасибо @ xiaofeng.li и @YatiSawhney):

ulang:
switch (menu) {
  case 1 : input(); break ulang;
}

Прочитайте статью SO Есть ли в Java оператор goto?

...