Java简单猜谜游戏

标签 java debugging while-loop

两个玩家的示例程序。玩家 1 输入 secret 号码(范围 0-100)。玩家 2 猜这个数字。如果该猜测更高或更低,则输出一条消息。如果玩家2猜对了,输出一条祝贺信息和猜测次数。这是我到目前为止所得到的。

import java.util.Scanner;
public class GuessingGame 
{
    public static void main(String[] args)
    {
        Scanner input = new Scanner(System.in);
        int number;

    System.out.println("Player 1 enter secret number (range 0 - 100): ");
    number = input.nextInt();

    int guess = 0;
    int tries = 0;

    while(guess != number)
    {
        tries = tries + 1;

        System.out.print("Player 2 enter your guess (range 0 - 100): ");
        guess = input.nextInt();
        if (guess > number)
        {
            System.out.printf("Your guess is higher than the correct number\n");
        }
        else if (guess < number)
        {
            System.out.printf("Your guess is lower than the correct number\n");
        }
        else if (guess == number)
        {
            System.out.printf("Congratulations! You guess the correct number\n");
            System.out.printf("Number of guesses: %d\n", tries);
            break;
        }
    }
}

}

我的问题是:如何隐藏玩家#1 输入的 secret 号码,以便玩家#2 看不到? 如何将 secret 数字的范围限制在 0 到 100 之间。我在玩家#1 输入后使用了下面的代码。但随后,它仍然会立即显示玩家#2 的输入。

if (number < 0)
System.out.print("Please enter number greater than 0");
if (number > 100)
System.out.print("Please enter number smaller than 100");

请大家帮帮我!我正在使用 NetBeans。

最佳答案

您可以使用JOptionPane(Dialogs),让玩家 1 输入 secret 号码。

For example:

    String input=JOptionPane.showInputDialog(null,"Player 1 enter secret number (range 0 - 100): ");
    int number=Integer.parseInt(input);

在此处查看有关对话框的更多信息 http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html

关于Java简单猜谜游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28532758/

相关文章:

c - 修改并替换C中char数组中的值

java - 我的结果集总是返回 false

java - 简单的 KeyListener 不起作用

java - 将当前地址显示为 Toast

java - 关闭 JavaFX Stage 后如何释放内存?

android - Gradle 发布版本仍然可以调试?

c++ - 如何修复 “a debugging check in this application has failed”错误?

c++ - 在 C++ 中,我需要创建一个程序,当输入某个数字时循环并停止,然后显示最大值和最小值

xcode - 如何调试来自用户 : [__NSCFNumber localizedStandardCompare:]: unrecognized selector sent to instance 的控制台消息

c - C 中的循环不能正确递增