Salve a tutti,
sto studiando Java per un esame universitario e mi ritrovo un problema che non riesco a capire riguardo l'inserimento di input.
Appena arrivo al punto di inserire la casa editrice mi passa direttamente all'inserimento del prezzo; perch�?codice:public class Libro{ private static long counter = 1; private static long id; private final String titolo; private final Autore[] autori; private double prezzo; private String editore; public Libro(){ this.id = counter++; Scanner in = new Scanner(System.in); System.out.println("Inserire il titolo del libro:"); this.titolo = in.nextLine(); System.out.println("Inserire il numero degli autori:"); int n = in.nextInt(); this.autori = new Autore[n]; for(int i = 0; i < n; i++){ System.out.println("Autore " + (i+1) +":"); this.autori[i] = new Autore(); } System.out.println("Inserire la Casa Editrice:"); this.editore = in.nextLine(); System.out.println("Inserire il prezzo del libro:"); this.prezzo = in.nextDouble(); } //.... } //Metto per completezza la parte di interesse di della classe autore public class Autore{ private final String nome; private final String cognome; public Autore(){ Scanner in = new Scanner(System.in); System.out.println("Inserisci il nome dell' autore:"); this.nome = in.nextLine(); System.out.println("Inserisci il cognome dell'autore"); this.cognome = in.nextLine(); } }
Nelle soluzioni del professore mette uno scanner per ogni tipo di dato, ma non riesco a motivarmelo.
Inoltre se metto la chiusura degli scanner mi causa eccezione a run-time :/ .
Spero nel vostro aiuto e nei vostri consigli.
PS: mi scuso nel caso in cui ho fatto qualcosa che non andava fatto, poich�, anche se sono iscritto da un po', non utilizzavo pi� il forum
--
ciauz