我有一个代码需要设置为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;
}
}
谢谢您的帮助.
最佳答案
看来问题出在
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)
原文地址:https://www.jb51.cc/java/532829.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。