Может кто-нибудь сказать мне, что не так с моим кодом, как показано ниже? Первый случай работает отлично, но второй и третий случай выдает исключение:Что не так с моим кодом сканера?
Связано ли это с петлями while в начале корпуса 2 и 3?
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int option = scan.nextInt();
switch (option) {
case 1: int line = scan.nextInt();
for (int i = 0; i < line; i++){
String operator = scan.next();
int n1 = scan.nextInt();
int n2 = scan.nextInt();
Boolean no1 = (n1 == 1) ? true:false;
Boolean no2 = (n2 == 1) ? true:false;
if (operator.equals("AND")) {
int result = (no1 && no2) ? 1:0;
System.out.println(result);
} else {
int result = (no1 || no2) ? 1:0;
System.out.println(result);
}
}
break;
case 2: while (!scan.nextLine().equals("0")) {
String operator = scan.next();
int n1 = scan.nextInt();
int n2 = scan.nextInt();
Boolean no1 = (n1 == 1) ? true:false;
Boolean no2 = (n2 == 1) ? true:false;
if (operator.equals("AND")) {
int result = (no1 && no2) ? 1:0;
System.out.println(result);
} else {
int result = (no1 || no2) ? 1:0;
System.out.println(result);
}
}
break;
case 3: while (scan.hasNextLine()) {
String operator = scan.next();
int n1 = scan.nextInt();
int n2 = scan.nextInt();
Boolean no1 = (n1 == 1) ? true:false;
Boolean no2 = (n2 == 1) ? true:false;
if (operator.equals("AND")) {
int result = (no1 && no2) ? 1:0;
System.out.println(result);
} else {
int result = (no1 || no2) ? 1:0;
System.out.println(result);
}
}
break;
default: System.out.println("Error");
break;
}
}
Исключение в потоке "основного" java.util.NoSuchElementException
в java.util.Scanner.throwFor (Scanner.java:862)
в java.util.Scanner. следующий (Scanner.java:1371)
на HelloWorld.main (HelloWorld.java:64)
Исключение составляет java.util.NoSuchElementException –
Пожалуйста, отредактируйте ваш вопрос, чтобы включить полную статистику стека любых ошибок, которые вы получаете. – azurefrog
Возможный дубликат [NoSuchElementException с Java.Util.Scanner] (http://stackoverflow.com/questions/13729294/nosuchelementexception-with-java-util-scanner) – David