Ho corretto l'errore. Però ho un'altro piccolo, di logica. Quando vado ad eseguire il programma, questo metodo ... fa un ciclo infinito chiedendomi sempre - cognome, nome, numero di telefono, cognome, nome ... ecc :Originariamente inviato da Kaamos
Il problema (anche se si sarebbe verificato anche in quelle successive) come vedevi dall'errore stava alla riga:
Se ti dava NullPointerException uno dei due non era istanziato, e se non è zuppa è pan bagnato.codice:cognome[i]=sc.nextLine();![]()
Non saprei come far sì che se il cognome prendesse in ingresso il pezzo di stringa "*", uscisse automaticamente dal metodo e richiamasse SalvoNelFile(); per far memorizzare subito i dati nel file di testo. Quello che ho fatto, in teoria dovrebbe funzionare, ma non funziona. Forse mi consigliate qualche altro ciclo(per esempio: "while" o "do/while"). Non so, prima avevo provato con do/while, ma mi dava errori.codice:void MemorizzoDati(){ for(i=0;i<dim;i++){ System.out.print("Inserire il cognome: "); cognome[i]=sc.nextLine(); if("*".equals(cognome[i])){ SalvoNelFile(); } System.out.print("Inserire il nome: "); nome[i]=sc.nextLine(); System.out.print("Inserire il numero di telefono: "); numTel[i]=sc.nextLine(); } }
Grazie!

Rispondi quotando