猜谜游戏0-100 java

我有一个需要从 0 到 100 设置的代码,并且有可能将零作为正确答案。我已将我的最终整数设置为 MAX(100)/MIN(0)。但 0 永远不是正确答案。我有 4 年的编程经验和 2 年的 Java 经验,但似乎任何问题 1-100 或 1-任何其他 MAX 都可以。请帮助,或解释 0 是否不是允许的选择。


import java.util.Random;

import java.util.Scanner;


public class GuessingGame {


    public static void main(String[] args) {


        Scanner scan = new Scanner(System.in);

        Random generator = new Random();


        int MIN = 0;

        int MAX = 100;

        int answer;

        int guess;

        String another = "y";

        boolean flag = false;

        boolean anotherFlag = true;


        while(anotherFlag){

            answer = generator.nextInt(MAX) + 1;


            System.out.println("I'm thinkin of a number between 0 and " + MAX );

            System.out.println("Can you guess what it is? \n");

            flag = false;

            while(!flag) {

                guess = scan.nextInt();


                if(guess == answer){

                    System.out.println("You guessed correctly");

                    flag = true;


                } else{

                    System.out.println("That was wrong, try again.");

                }

            }


            System.out.println("Want to Play again?(y/n)");

            another = scan.next();


            if(another.equalsIgnoreCase("y") == true){

                anotherFlag = true;

            } else{

                anotherFlag = false;

            }

        }

感谢您的帮助。


qq_遁去的一_1
浏览 48回答 1
1回答

饮歌长啸

似乎问题出在    answer = generator.nextInt(MAX) + 1;你的答案范围是 1 - MAX。如果你想生成一个介于 0 - MAX 之间的随机数,其中 MAX = 100。你应该写 -    answer = generator.nextInt(MAX+1);因为根据 Java API (java v8),    public int nextInt(int bound)返回介于 0(包括)和指定值(不包括)之间的伪随机、均匀分布的 int 值
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java