Следующий метод Java предполагает принять строку (имя человека) от пользователя с помощью клавиатуры, найти это имя в массиве с именем name[]
и удалить имя этого человека из массива (по назначая name[i] = "INVALID"
).NoSuchElementException при использовании сканера для чтения ввода
код пытается принять строку ввода (имя человека), используя Scanner
объект класса del_name
, но я получаю NoSuchElementException
в заявлении
s=del_name.next();
т.е. 4 заявления от верхней части.
Буду очень благодарен, если кто-то может дать решение, а также объяснить, почему этот код не работает. (Спасибо)
void Deletee()
{
Scanner del_name=new Scanner(System.in);
String s;
System.out.println("Enter the name to be deleted");
s=del_name.next(); // causing NoSuchElementException
int i=0;
/* find position in which the name occurs using while-loop below */
while(!s.equalsIgnoreCase(name[i]) && i<count)
i++ ; // increment i to search in next array index
if(i<count)
{
name[i]="INVALID";
count--;
System.out.println("Deletion Successful");
}
else
{
System.out.println("No such person exist");
}
del_name.close();
}