Перенос потока из контура в корпус переключателя - PullRequest
0 голосов
/ 04 октября 2018

Может кто-нибудь объяснить мне, как передать поток управления из цикла for в регистр переключателя в моем коде

for (int i = 0; i < 3; i++) {
    String answer;
    System.out.println("Are You Sure ?");
    answer = input.next();

    if (answer.equals("y")) {
        break OUTER;
    }

}

switch(operator) {
case "add":
    result = num1 + num2;
    System.out.printf("%d + %d is equal to %d", num1, num2, result);
    break;
case "subtract":
    result = num2 - num1;
    System.out.printf("%d - %d is equal to %d", num1, num2, result);
    break;
case "multiply":
    result = num2 * num1;
    System.out.printf("%d x %d is equal to %d", num1, num2, result);
    break;  
case "divide":
    result = num2 / num1;
    System.out.printf("%d / %d is equal to %d", num1, num2, result);
    break;    
}

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Пожалуйста, укажите, как вы можете использовать метки в Java, в основном ваша метка должна быть в рамках вашего заявления ссылка

Из вашего кода, я предполагаю, что вы просто хотите выйти изцикл for.Так что вы можете сделать ниже

OUTER:  for (int i = 0; i < 3; i++) {
    String answer;
    System.out.println("Are You Sure ?");
    answer = "y";

    if (answer.equals("y")) {
        break OUTER;
    }
}
0 голосов
/ 04 октября 2018

Для циклов есть выражение условия, которое вы уже используете для спасения после трех попыток.Вы можете изменить выражение, чтобы учесть ответ.Как то так:

String answer = "";

for (int i = 0; i < 3 || !answer.equals("y"); i++) {
    System.out.println("Are You Sure ?");
    answer = input.next();
}
...