Open In App

Initialize a static Map in Java using Double Brace Initialization

Last Updated : 03 Dec, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, a static map is created and initialised in Java using Double Brace Initialization.

Static Map in Java
A static map is a map which is defined as static. It means that the map becomes a class member and can be easily used using class.

Double Brace Initialization
In Double Brace Initialization:

  • The first brace creates a new Anonymous Inner Class. These inner classes are capable of accessing the behaviour of their parent class. So, in our case, we are actually creating a subclass of HashMap class, so this inner class is capable of using put() method.
  • The second braces are instance initializers. The code an instance initializers inside is executed whenever an instance is created.

Approach:

  • Pass the map values as Key and Value pair in the Double braces.
  • A static factory Map instance is returned.
  • Store it in Map and use.

Below is the implementation of the above approach:

Example 1:




// Java program to create a static map
// using Double Brace Initialization
  
import java.util.*;
  
class GFG {
  
    // Declaring and instantiating the static map
    // using Double Brace Initialization
    private static Map<String, String> map
        = new HashMap<String, String>() {{
            put("1", "GFG");
            put("2", "Geek");
            put("3", "GeeksForGeeks");
        }};
  
    // Driver code
    public static void main(String[] args)
    {
        System.out.println(map);
    }
}


Output:

{1=GFG, 2=Geek, 3=GeeksForGeeks}

Example 2: To show with 10 key-value pairs




// Java program to create a static map
// using Double Brace Initialization
  
import java.util.*;
  
class GFG {
  
    // Declaring and instantiating the static map
    // using Double Brace Initialization
    private static Map<String, String> map
        = new HashMap<String, String>() {{
            put("1", "GFG");
            put("2", "Geek");
            put("3", "GeeksForGeeks");
            put("4", "G");
            put("5", "e");
            put("6", "e");
            put("7", "k");
            put("8", "s");
            put("9", "f");
            put("10", "o");
        }};
  
    // Driver code
    public static void main(String[] args)
    {
        System.out.println(map);
    }
}


Output:

{1=GFG, 2=Geek, 3=GeeksForGeeks, 4=G, 5=e, 6=e, 7=k, 8=s, 9=f, 10=o}

Related Articles:



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads