Originariamente inviato da JanQuarius
Quando lo eseguo mi dà questo errore:
Exception in thread "main" java.lang.NullPointerException
at agenda_telefonica.Agenda.MemorizzoDati(Agenda.java :40)
at agenda_telefonica.Main.main(Main.java:7)
Java Result: 1
La prima questione: nel tuo codice si vede la dichiarazione degli array

String cognome[], nome[], numTel[];

ma non c'è la istanziazione effettiva degli array. Gli array sono oggetti, vanno istanziati con new tipo[dimensione] altrimenti quei reference restano a null.


E inoltre, posso anche dirti questo. Essendo come dici un "compito", io immagino subito che stai seguendo un corso di studi su Java e che quindi stai ancora "imparando". Non so a quale livello sei ma vorrei segnalarti che il design della tua classe è abbastanza fumoso e critico (tanto per iniziare, devi gestire 3 array separati).

Se non ti sono state date chiare e precise indicazioni su quante/quali classi definire e quindi ha un po' di libertà, io potrei suggerirti di creare:
- una classe VoceAgenda che rappresenta una singola "voce" della agenda.
- una classe Agenda che si occupa solo di gestire la struttura dati (aggiunta, rimozione, ecc.. di una voce) ma NON del input/output verso l'utente. Come struttura dati puoi utilizzare o un array o una collezione-lista (se conosci le collezioni) di oggetti VoceAgenda.
- una classe IOAgenda per leggere e salvare da/su file i dati contenuti in una Agenda.
- una classe GestioneAgenda che si occupa di richiedere l'input all'utente e di mostrare i dati.

Certo, ci sarebbe da scrivere un po' di codice in più ma sarebbe molto più logico ed otterresti un ottimo risultato.

Poi ovviamente vedi tu in base a quello che sai/devi fare.