У меня возникают проблемы с этим фрагментом кода при использовании класса Scanner. При вводе варианта 1 или 2 все проходит гладко, программа выполняет их и показывает исходное меню для ввода с клавиатуры нового параметра. Проблема связана с вариантом 3, поскольку он выполняется идеально, но при отображении начального меню с параметрами Сканер не ждет ввода с клавиатуры от пользователя и выдает следующее исключение:
(Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:962)
at java.base/java.util.Scanner.next(Scanner.java:1503)
at practicas.Main.main(Main.java:50)
Я читал, что закрытие любого объекта Scanner(System.in) приведет к закрытию всех созданных объектов Scanner, но также и то, что если я создам несколько объектов Scanner и закрою один из них , не повлияет на другие объекты. Может ли кто-нибудь помочь понять работу сканера для чтения входных данных?
Заранее спасибо.
public static void main(String[] args)
{
// TODO Auto-generated method stub
int opcion=-1;
Scanner scan=new Scanner(System.in);
while (opcion!=0)
{
System.out.println("Introduce la opción deseada:");
System.out.println("0: Salir");
System.out.println("1: Calcular promedio de enteros");
System.out.println("2: Idioma de animales");
System.out.println("3: escribir y leer de un fichero");
try
{
opcion=scan.nextInt();
switch (opcion)
{
case 0:
break;
case 1:
{
calcularPromedio();
break;
}
case 2:
{
hablaDeAnimales();
break;
}
case 3:
{
leerYEscribir();
break;
}
}
}
catch(Exception e)
{
System.out.println("La opción introducida no es un número entero "+e);
}
}
scan.close();
System.out.println("Gracias!");
}
private static void calcularPromedio()
{
int [] enteros= {10,20,30,40,50};
int suma=0;
double promedio=0;
for (int index=0;index
Подробнее здесь: https://stackoverflow.com/questions/793 ... -exception
Класс сканера не ждет ввода данных от клиента и выдает исключение ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1735326885
Anonymous
У меня возникают проблемы с этим фрагментом кода при использовании класса Scanner. При вводе варианта 1 или 2 все проходит гладко, программа выполняет их и показывает исходное меню для ввода с клавиатуры нового параметра. Проблема связана с вариантом 3, поскольку он выполняется идеально, но при отображении начального меню с параметрами Сканер не ждет ввода с клавиатуры от пользователя и выдает следующее исключение:
(Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:962)
at java.base/java.util.Scanner.next(Scanner.java:1503)
at practicas.Main.main(Main.java:50)
Я читал, что закрытие любого объекта Scanner(System.in) приведет к закрытию всех созданных объектов Scanner, но также и то, что если я создам несколько объектов Scanner и закрою один из них , не повлияет на другие объекты. Может ли кто-нибудь помочь понять работу сканера для чтения входных данных?
Заранее спасибо.
public static void main(String[] args)
{
// TODO Auto-generated method stub
int opcion=-1;
Scanner scan=new Scanner(System.in);
while (opcion!=0)
{
System.out.println("Introduce la opción deseada:");
System.out.println("0: Salir");
System.out.println("1: Calcular promedio de enteros");
System.out.println("2: Idioma de animales");
System.out.println("3: escribir y leer de un fichero");
try
{
opcion=scan.nextInt();
switch (opcion)
{
case 0:
break;
case 1:
{
calcularPromedio();
break;
}
case 2:
{
hablaDeAnimales();
break;
}
case 3:
{
leerYEscribir();
break;
}
}
}
catch(Exception e)
{
System.out.println("La opción introducida no es un número entero "+e);
}
}
scan.close();
System.out.println("Gracias!");
}
private static void calcularPromedio()
{
int [] enteros= {10,20,30,40,50};
int suma=0;
double promedio=0;
for (int index=0;index
Подробнее здесь: [url]https://stackoverflow.com/questions/79310655/scanner-class-not-waiting-for-customer-input-and-throws-an-exception[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия