猜谜游戏0-100 java

前端之家收集整理的这篇文章主要介绍了猜谜游戏0-100 java 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个代码需要设置为0-100,并且有可能将零设为正确的答案.我将我的最终整数设置为MAX(100)/ MIN(0).但是0永远不是正确的答案.我有4年的编码经验,并且有2年的Java经验,但是似乎任何问题1-100或1-任何其他MAX都可以.请提供帮助,或说明是否不允许使用0.

  1. import java.util.Random;
  2. import java.util.Scanner;
  3. public class GuessingGame {
  4. public static void main(String[] args) {
  5. Scanner scan = new Scanner(System.in);
  6. Random generator = new Random();
  7. int MIN = 0;
  8. int MAX = 100;
  9. int answer;
  10. int guess;
  11. String another = "y";
  12. boolean flag = false;
  13. boolean anotherFlag = true;
  14. while(anotherFlag){
  15. answer = generator.nextInt(MAX) + 1;
  16. System.out.println("I'm thinkin of a number between 0 and " + MAX );
  17. System.out.println("Can you guess what it is? \n");
  18. flag = false;
  19. while(!flag) {
  20. guess = scan.nextInt();
  21. if(guess == answer){
  22. System.out.println("You guessed correctly");
  23. flag = true;
  24. } else{
  25. System.out.println("That was wrong,try again.");
  26. }
  27. }
  28. System.out.println("Want to Play again?(y/n)");
  29. another = scan.next();
  30. if(another.equalsIgnoreCase("y") == true){
  31. anotherFlag = true;
  32. } else{
  33. anotherFlag = false;
  34. }
  35. }

谢谢您的帮助.

最佳答案
看来问题出在

  1. answer = generator.nextInt(MAX) + 1;

您的答案范围是1-MAX.

如果您想生成一个介于0-MAX之间的随机数,其中MAX = 100.

  1. answer = generator.nextInt(MAX+1);

因为根据Java API(java v8),

  1. public int nextInt(int bound)

返回一个伪随机数,其int值均匀分布在0(含)和指定值(不含)之间

猜你在找的Java相关文章