Я пытаюсь получить входные данные из класса Scanner, но каждый раз, когда я его вызываю, он сбрасывает всю программу. Когда вы пытаетесь поймать исключение и распечатать сообщение, ничего не появляется, поэтому я даже не уверен, в чем корень проблемы. Некоторая фоновая информация заключается в том, что этот класс вызывается основным методом, который также имеет сканер, который был запущен, но закрыт до вызова метода этого класса.Java - сканер не запрашивает ввода, а затем сбой
public class UserHandler {
static Scanner userInput1 = new Scanner(System.in);
static void addInterface() throws IOException, FileNotFoundException{
boolean addMore = true;
while(addMore){
System.out.println("Please enter restaurant name: ");
String name = userInput1.next();
if(!FileHandler.containsName(name)){
System.out.println("Name already exists!");
}else{
String[] tags = new String[5];
System.out.print("\nPlease enter tags seperated by spaces: ");
for(int i = 0; i < tags.length; i++){
if(userInput1.hasNext()){
tags[i] = userInput1.next();
}
else{
break;
}
}
FileHandler.addName(name,tags);
}
}
}
}
Я пробовал несколько раз и не смог воспроизвести эту проблему. Я предполагаю, что это как-то связано с синтаксисом или с чем-то, что просто не называется должным образом. В любом случае я потратил немало времени на его исправление, но безрезультатно.
Можем ли мы увидеть ваш 'main' метод? –
опубликовать основной класс, а также –
Я уверен, что он не сбой, но генерирует исключение, которое поставляется со стеком. Прочтите его и опубликуйте. –