Я пытаюсь отсканировать отрицательное число с помощью класса Scanner в Java.Сканер не сканирует отрицательные числа
У меня есть этот входной файл:
-1,2,3,4
Мой код выглядит следующим образом:
Scanner input = new Scanner(new File("data/input.txt"));
int i = input.nextInt();
input.useDelimiter(",|\\s*"); //for future use
int a = input.nextInt();
System.out.println(i);
System.out.println(a);
Мой ожидается выход должен быть
-1
вместо этого я получаю сообщение об ошибке (Несоответствие типов).
Когда я
String a = input.next();
вместо
int a = input.nextInt();
Я больше не получаю сообщение об ошибке, и я вместо того, чтобы получить
-
'input.nextInt();' читает * только * целое значение, то '\ n' не будет потребляться , – Maroun
Я немного смущен. Почему, когда я делаю «код» (input.next()), он не читает \ n, а скорее «-». – 73est
Это потому, что он пропускает разделитель '\ n' (newline), который является символом пробела. – rgettman