请有人向我解释如何在我的代码中将控制流从for循环转移到开关case
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;
}
for循环有一个条件表达式,您已经使用它在三次尝试后退出。您可以修改表达式以考虑答案。类似于这样:
String answer = "";
for (int i = 0; i < 3 || !answer.equals("y"); i++) {
System.out.println("Are You Sure ?");
answer = input.next();
}
请参考如何在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;
}
}