#java #hashmap #integer #java.util.scanner #wrapper
Вопрос:
Я ищу, чтобы создать исключение для ввода пользователем. В принципе, я хочу, чтобы гипотетический пользователь ввел значение, которое меньше 100 ( % ), или в противном случае Java выдаст пользовательскую ошибку с надписью «Тепло % не может превышать 100». Это для теоретической системы, которая сохраняет предпочтения в отношении тепла в душе. Функция showerUser.put() предназначена для хранения значения в хэш-карте. Проблема в том, что переменная «showererHeatValue» имеет тип scanner, а переменная «errorCheck» имеет тип int. В основном я пытаюсь преобразовать введенное пользователем значение в целое число, которое я могу использовать для создания исключения.
System.out.println("Hello, Guest. Please enter your shower heat % preference:"); showerUser.put(Integer.valueOf(showererHeatValue.nextLine()), "Guest"); int errorCheck = showererHeatValue; if (errorCheck gt; 100) { throw new ArithmeticException("Heat % cannot exceed 100"); } else { System.out.println("Your Heat Preference Saved"); }
Комментарии:
1. Вы не можете преобразовать сканер в int. что вы можете сделать, так это запросить у пользователя int
showerHeatValue.nextInt()
и сохранить его