Il codice seguente mi sta fornendo NullPointerException
. Il problema è il seguente riga:NullPointerException durante l'utilizzo del metodo put di HashMap
...
dataMap.put(nextLine[0], nextLine[6]);
Quello che è strano è che ho eseguito questo codice senza la linea di cui sopra e la chiamata a nextLine[0]
e nextLine[6]
lavoro esattamente come previsto - cioè mi danno indietro elementi di una file CSV. Dichiaro e inizializzare il HashMap
con il codice
HashMap<String, String> dataMap = null;
in precedenza nel metodo
String[] nextLine;
int counter=0;
while (counter<40) {
counter++;
System.out.println(counter);
nextLine = reader.readNext();
// nextLine[] is an array of values from the line
System.out.println(nextLine[0] + " - " + nextLine[6] +" - " + "etc...");
dataMap.put(nextLine[0], nextLine[6]);
}
return dataMap;
}
Non è proprio il problema che è * esplicitamente * inizializzato? A null? –
Penso che Codingscape significhi dire "non è un'istanza" –
In realtà, qui c'è un suggerimento. Non ha ricevuto alcun avvertimento perché l'ha inizializzato su null per scavalcare l'avviso del compilatore che sicuramente stava ottenendo. Si dovrebbe prendere l'abitudine di NON inizializzare le variabili su un valore "Neutro" per impostazione predefinita, impostandole solo sul loro valore reale in modo che il compilatore possa avvisare. –