Salve a tutti,
sto realizzando un programma che crea archivi di dizionari, ma ho un problema con l'inserimento di nuove voci nel dizionario, poiché al momento in cui provo ad inserire nuove voci nel dizionario selezionato dall'utente(la selezione va a buon fine), il programma mi restituisce "null".
Ho provato diverse strade ma non sono riuscito a capire dove sta il problema.
Potete aiutarmi? Vi posto il codice dei metodi(il metodo statico per l'inserimento sta nella classe Dizionario)
Grazie![]()
Archivio -ciclo principale
codice:Archivio listaDizionari=new Archivio(); Dizionario nuovoDizionario=new Dizionario(); char scelta; // ciclo principale do{ scelta=menuPrincipale(); // carica il menu principale switch(scelta){ case 'V': case'v': listaDizionari.visualizzaDizionario(listaDizionari);break; // stampa la collezione dei dizionari case 'S': case's': nuovoDizionario = selezioneDizionario(listaDizionari); if (nuovoDizionario!=null) nuovoDizionario.operazioniDizionario(); break; // seleziona il dizionario case 'I': case'i': inserimentoDizionario(listaDizionari);break;// inserisce un nuovo dizionario nella collezione case 'C': case'c': listaDizionari.rimozioneDizionario(listaDizionari);break;// cancella un dizionario dalla collezione case 'Z': case'z':; } }while(scelta!='e' && scelta!='E'); System.out.println("\nBye!");
Dizionario-metodo per le operazioni su dizionario e metodo statico per l'inserimento
codice:public static Vector<Lemma> operazioniDizionario(){ Dizionario nuovoDizionario=new Dizionario(); Vector<Lemma>listaDizionario=new Vector<Lemma>(); listaDizionario=nuovoDizionario.listaLemmi; char scelta; // ciclo principale do{ scelta=menuDizionario(); switch(scelta){ case 'A': case'a':lemmaIns(listaDizionario) ;break; case 'N': case'n':;break; case 'D': case'd':;break; case 'S': case's':;break; case 'C': case'c':;break; case 'E': case'e':;break; } }while(scelta!='e' && scelta!='E'); System.out.println("\nBye!"); return listaDizionario; }codice:public static void lemmaIns(Vector<Lemma>listaDizionario){ Lemma nuovoLemma=Lemma.leggiLemma(); inserisciOrdinato(listaDizionario, nuovoLemma); System.out.println("Hai inserito il lemma"+" "+nuovoLemma.getTermine()+ " "+ "procedi!"); }

.
Rispondi quotando