Cosa numero 1: NullPointerException è un'eccezione che viene sollevata a runtime, quindi in esecuzione, non in compilazione. Compilazione ed Esecuzione sono due fasi distinte del ciclo di vita di un software, ed è bene averle chiare fin da subito: la prima corrisponde alla "nascita" del programma, la seconda corrisponde alla sua vita (l'esecuzione, appunto, dopo la nascita).
Per quanto riguarda il tuo problema mi sembra alquanto evidente:
codice:Reader tastiera = null; BufferedReader bufferTastiera = new BufferedReader(tastiera);
La prima riga impone a null un riferimento... e poi provi a passare questo riferimento (che è nullo!) al costruttore di BufferedReader... in pratica stai dicendo al BufferedReader di leggere dal nulla.
Forse volevi assegnare alla variabile "tastiera" l'oggetto System.in.
Ciao.![]()