【发布时间】:2022-01-06 21:02:30
【问题描述】:
我完全知道这个问题已经被问过很多次了,它是 CSC 的经典第一年问题。我不是在寻找问题本身的解决方案。我认为我基本上已经完成了,但是我错过了一些我找不到的东西。
这是我的代码:
import java.util.Scanner;
import java.util.Random;
public class HiLow
{
public static void main (String[] args)
{
Random generator = new Random();
Scanner scan = new Scanner(System.in);
int num1,guess;
int count = 0;
num1 = generator.nextInt(100) + 1;
while(true) {
System.out.print("Enter an integer between 1 or 100 or enter 0 at anytime to quit: ");
guess = scan.nextInt();
count++;
if(guess == num1 || guess == 0) {
if(guess == 0) {
System.out.println("Thanks for playing");
break;
}
System.out.println("Congrats you've guessed correct and your total guesses is " + count );
break;
}
else if (guess > 100 || guess < 1) {
System.out.print("I see you cannot follow instructions. I said ");
count--;
}
else if (guess > num1) {
System.out.println("You have guessed too high. ");
}
else {
System.out.println("You have guessed too low.");
}
}
}
}
我的问题是我需要在“如果用户退出或成功猜到正确的数字,提示用户看他们是否想再次玩”时提示用户。我迷路了,不知道如何在休息后从头开始继续我的 while 循环。有没有办法结束我从 (guess == num1 || guess ==0) 得到的中断条件并指示我的程序在 while(true) 语句处重新开始?
谢谢
【问题讨论】:
-
此时对你来说一个很好的学习练习是理解 break 和 continue 语句之间的区别。查找它们并在当前问题之外构建一个非常简单的示例。这将帮助您找到您的这个问题的答案。
-
是的,浏览了我的课堂笔记,在网上查了一下,但这些都没有真正回答我如何重新启动我的 while 循环的问题。不过还是谢谢。
标签: java if-statement while-loop nested-loops