Java – NullPointerException while using put method of HashMap


The following code is giving me a NullPointerException. The problem is on the following line:

dataMap.put(nextLine[0], nextLine[6]);

What is strange is that I have run this code without the above line and the call to nextLine[0] and nextLine[6] work exactly as expected – that is they give me back elements of a csv file. I declare and initialise the HashMap with the code

HashMap<String, String> dataMap = null;

earlier in the method

  String[] nextLine;
  int counter=0;
  while (counter<40) {

    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;

Best Solution

HashMap<String, String> dataMap = new HashMap<String,String>();

Your dataMap variable isn't initialized at this point. You should be getting a compiler warning about that.