Il problema nasce in generale quando si mischiano nextLine() e nextXYZ() (XYZ altro tipo).Originariamente inviato da feys88
Il problema è che non mi fa inserire l'eta in input:
inserisco nome,cognome,eta al primo ciclo e ok me lo fa inserire
al secondo ciclo mi da errore.
Perchè?
Se per un nextInt() tu digiti 123 poi INVIO il nextInt ritorna effettivamente 123 ma il newline rimane ancora lì da processare (non viene scartato) e ad un successivo nextLine() viene "consumato" e preso subito immediatamente come riga "vuota", senza che tu possa inserire qualcosa per quel nextLine.
Morale: o si "sa" come funziona il tutto e si mischiano i nextLine/nextXYZ in modo saggio .... oppure è bene prendere in input sempre una riga (nextLine() ) e poi eventualmente parsare la stringa per convertirla in int, long, ecc... secondo quanto necessario con i parseXXX() delle classi wrapper (Integer, Long, ecc...).