У меня есть Java-задание и не могу заставить его работать.Guessing Game for Java
Я играю в гадание между 1-100. Когда я запускаю свой код, он продолжает говорить «слишком низко», правильно ли он или слишком высок.
Вот мой код:
public static void main(String[] args) throws java.io.IOException {
int i, ignore, answer = 64;
do {
System.out.println("I'm thinking of a number between 1 and 100.");
System.out.println("Can you guess it?");
i = (int) System.in.read();
do {
ignore = (int) System.in.read();
} while (ignore != '\n');
if (i == answer) System.out.println("**RIGHT**");
else {
System.out.print("...Sorry, you're ");
if (i < answer)
System.out.println("too low");
else
System.out.println("too high");
System.out.println("Try again!\n");
}
} while(answer != i);
}
Потому что с вызовом 'System.in.read()', вы получаете один 'char'. Вы должны построить «Сканер» и называть его методом 'nextInt()', например: «Сканирование сканера = новый сканер (System.in); i = scan.nextInt(); ' – Majora320
' System.in.read() 'принимает следующий ** байт ** не следующий ** int **. Существует большая разница –
Вы должны использовать отладчик или даже просто распечатать переменную, чтобы увидеть, что делает ваш код на самом деле, прежде чем вы просите без какого-либо теста. Если да, напишите их на вопрос. – Nier