MiriamG ha scritto:
Salve a tutti, devo svolgere questo esercizio in Java. Ho 2 problemi:
1) Vorrei che il programma dopo aver fatto l'inserimento di un utente mostri di nuovo il menu per poter fare la stampa o un altro inserimento
2)Vorrei salvare in una lista per esempio gli elementi che inserisco
Qualcuno può aiutarmi?
Per il primo punto puoi risolvere in diversi modi ma è davvero semplice, ti basta scrivere la condizione del while in modo appropriato.
Al momento resti dentro al while se scelta è minore di 1 o maggiore di 3, ti basta fare il contrario e prendere i valori compresi tra 1 (incluso) e 3 (escluso). Ovviamente scelta all'esterno va inizializzato a un valore che ti permetta di entrare dentro al ciclo la prima volta.
Se non vuoi fissare scelta a 1 o a 2 puoi anche usare il do-while.
Per il secondo punto dovresti prima di tutto definire i campi e i metodi di Persona.
Per ora nome, cognome ... sono definite localmente al metodo main, mentre tu hai bisogno che siano campi di istanza.
In Persona hai anche bisogno di un costruttore, poi ti converrebbe aggiungere anche i metodi getter e setter (questi se vuoi rendere un oggetto Persona mutabile, dipende dal contesto).
Una volta fatto questo sarai in grado di creare un nuovo oggetto Persona con i dati inseriti dall'utente e poi potrai aggiungerli a una lista (ad esempio ArrayList).
Ti converrebbe però inserire il main in una classe esterna a Persona. Inoltre nel codice tutti quei try-catch non hanno senso, solo la parte in cui fai Integer.parseInt () dell'età e della scelta può causare una NumberFormatException, tutti gli altri sono inesatti.