gpt4 book ai didi

java - 无法停止 while 循环

转载 作者:行者123 更新时间:2023-11-30 08:46:40 27 4
gpt4 key购买 nike

在我创建的这个游戏中,我遇到了一个问题。这一切都很好,除了如果你因为某种原因失败了,游戏就会重新启动,这不是我想要的。我想显示我设置为显示的内容,然后中断循环,由于某种原因 break; 不工作。代码:

import java.util.Scanner;
import java.util.Random;

public class GuessingGame1_3 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Random rand = new Random();

System.out.print("Pick a number to guess between: ");
int userNumber = input.nextInt();

int random = rand.nextInt(userNumber);

if (random < 1) {
random = random + 1;
} else if (random > userNumber) {
random = random - 1;
}

while (true) {
System.out.print('\f');
System.out.print("Pick the amount of attempts you would like to have (Max of 10 attempts): ");
int userAttempts = input.nextInt();

if (userAttempts > 10) {
System.out.println("To Many Attempts");
System.out.println("");
} else if (userAttempts <= 10) {

System.out.println("Version: 1.3");
System.out.println("----------------------------------------------------------------------");
System.out.println("You have " + userAttempts + " attempts to guess the number or else you fail. Goodluck!");
System.out.println("");
System.out.println("Type 'begin' to Begin!");
String start = input.next();
System.out.print('\f');

if (start.equals("begin")) {
for(int i=1; i<userAttempts + 1; i++) {
System.out.print("Enter a number between 1-" + userNumber + ": ");
int number = input.nextInt();

if (number > random) {
System.out.println("Too Big");
System.out.println("");
} else if (number < random) {
System.out.println("Too Small");
System.out.println("");
} else if (number == random) {
System.out.println("Correct!");
break;
}

if (i == userAttempts) {
System.out.println("You have failed");
System.out.println("Number Was: " + random);
break;
}
}
} else if (!start.equals("begin")) {
System.out.print('\f');
System.out.println("Incorrect Command");
System.out.println("Please Exit Console And Retry");
break;
}
}
}
}
}

最佳答案

对于嵌套循环,如果您想中断外层循环,您可以添加标签前缀1

game: while (true) {

那么你可以

break game;

终止标记为game 的语句。

1另见 JLS-14.7. Labeled Statements它说(部分地)Statements may have label prefixes.

关于java - 无法停止 while 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32793478/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com