In this article, a static map is created and initialised in Java using Java 9.
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.
Java 9 feature – Map.of() method
In Java 9, Map.of() was introduced which is a convenient way to create instances of Map interface. It can hold up to 10 key-value pairs.
Approach:
- Pass the map values as Key and Value pair in the Map.of() method.
- 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 Java 9 import java.util.*; class GFG { // Declaring and instantiating the static map private static Map<String, String> map = Map.of( "1" , "GFG" , "2" , "Geek" , "3" , "GeeksForGeeks" ); // Driver code public static void main(String[] args) { System.out.println(map); } } |
Output:
{3=GeeksForGeeks, 2=Geek, 1=GFG}
Example 2: To show the error when 10 key-value pairs are given
// Java program to create a static map using Java 9 import java.util.*; class GFG { // Declaring and instantiating the static map private static Map<String, String> map = Map.of( "1" , "GFG" , "2" , "Geek" , "3" , "GeeksForGeeks" , "4" , "G" , "5" , "e" , "6" , "e" , "7" , "k" , "8" , "s" , "9" , "f" , "10" , "o" ); // Driver code public static void main(String[] args) { System.out.println(map); } } |
Output:
{10=o, 9=f, 8=s, 7=k, 6=e, 5=e, 4=G, 3=GeeksForGeeks, 2=Geek, 1=GFG}
Example 3: To show the error when more than 10 key-value pairs are given
// Java program to create a static map using Java 9 import java.util.*; class GFG { // Declaring and instantiating the static map private static Map<String, String> map = Map.of( "1" , "GFG" , "2" , "Geek" , "3" , "GeeksForGeeks" , "4" , "G" , "5" , "e" , "6" , "e" , "7" , "k" , "8" , "s" , "9" , "f" , "10" , "o" , "11" , "r" ); // Driver code public static void main(String[] args) { System.out.println(map); } } |
Compilation Error:
Main.java:12: error: no suitable method found for of(String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String, String) 1 error
Related Articles: