10

Trying to create (or rather learn) a HashMap in below fashion :

public class Demo{

     public static void main(String args[]){
        System.out.println("============Starting Hashmap============");


        //hashmap portion
        HashMap<String, Integer> myMap = new HashMap<String, Integer>();

        System.out.println("============Ending Hashmap============");
     }
}

I am using an online complier and have searched a lot, i found that my way of declaration is correct but something else is popping up the error
Below is the error

Demo.java:8: error: cannot find symbol
                HashMap<String, Integer> myMap = new HashMap<String, Integer>();
                ^
   symbol:   class HashMap
   location: class Demo

   Demo.java:8: error: cannot find symbol
                HashMap<String, Integer> myMap = new HashMap<String, Integer>();
                                                     ^
      symbol:   class HashMap
      location: class Demo

2 errors

What i need help in : m just trying to get the basic of creating a hashmap and inserting some key and value in it, but above error stopped me in very first step.....any help in solving this is appreciated!! :)

user2864740
  • 60,010
  • 15
  • 145
  • 220
NoobEditor
  • 15,563
  • 19
  • 81
  • 112

3 Answers3

31

You need to import the HashMap into the class

import java.util.HashMap;

public class Demo{

      public static void main(String args[]){
        System.out.println("============Starting Hashmap============");


        //hashmap portion
        HashMap<String, Integer> myMap = new HashMap<String, Integer>();

        System.out.println("============Ending Hashmap============");
     }
}
Abimaran Kugathasan
  • 31,165
  • 11
  • 75
  • 105
2

you need to import the HashMap to avoid the compile error

import java.util.HashMap;
Nambi
  • 11,944
  • 3
  • 37
  • 49
1

java.util.HashMap<Character, Integer> map = new java.util.HashMap<>();

Use this if you can't import java.util.HashMap;

Jayasurya
  • 79
  • 1
  • 3
  • 1
    99.98% of the time, this is the wrong thing to do. – Stephen C Sep 01 '20 at 13:55
  • @Stephen C, Could you please explain why it is so? – Ranjul Arumadi Aug 12 '22 at 13:31
  • Well 99.98% of the time you **can** import `java.util.HashMap`. The remaining 0.02% is when your code or a 3rd-party library has done something crazy like defining its own version of `HashMap` (with the same name!!) AND the import would cause a collision. Referring to a class via it FQN when it is not necessary is just making your code verbose. An experienced Java programmer will tell you that's a bad thing. Just import it. – Stephen C Aug 12 '22 at 13:40
  • 1
    Sometimes in online coding interviews, the import and other lines will be read only and only one function will be given to complete. Now without using an import statement, how do you import the HashMap? – Jayasurya Aug 13 '22 at 20:13