Как исправить мою программу, ошибка происходит, int не может быть разыменована
Я перепробовал множество решений, и ни одно из них не сработало, мне нужна помощь
Это JCreator, эта программа генерирует случайное число в диапазоне от 1 до 100, которое будет играть ровно в 5 игр "Кто ближе?". Пользователь будет угадывать, а компьютер будет угадывать, что такое сгенерированное число.
если у пользователя есть угаданный номер ближе к сгенерированному номеру, он выигрывает игру.
иначе компьютер победит
import javax.swing.JOptionPane;
public class Main {
public static void main(String args[]) {
String userGuessAS;
int userGuess, randomGenerated, computerGenerated;
for (int j = 0; j <= 5; j++) {
randomGenerated = (int) (Math.random() * 100 + 1);
computerGenerated = (int) (Math.random() * 100 + 1);
userGuessAS = JOptionPane.showInputDialog(null,
"User,please enter your guess(a value between 1 and 100");
userGuess = Integer.parseInt(userGuessAS);
if (isValidGuess(userGuess)) {
JOptionPane.showMessageDialog(null,
"the generated number was " + randomGenerated + ",the computer number was "
+ whoIsCloser + computerGenerated + " and the winner was the ",
"Game Result", JOptionPane.INFORMATION_MESSAGE);
} else
JOptionPane.showMessageDialog(null, "Invalid guess value entered-this game is void",
"Game Result", JOptionPane.INFORMATION_MESSAGE);
}
System.exit(0);
}
public static boolean isValidGuess(int userGuess) {
if (userGuess.length >= 1 && userGuess.length <= 3 && userGuess.isDigit) {
return true;
} else if (userGuess.charAt(0) || userGuess.charAt(1) || userGuess.charAt(2))
return false;
}
public static String whoIsCloser(int computerGenerated, int randomGenerated, int userGuess) {
int answer, answer2;
answer = computerGenerated - randomGenerated;
answer2 = userGuess - randomGenerated;
if (answer < 0 && answer2 < 0) {
answer = answer * -1;
answer2 = answer2 * -1;
} else if (computerGenerated >= userGuess) {
return computer;
} else if (userGuess >= computerGenerated) {
return user;
}
}
}