Initializing a static Map using Stream in Java
Before initializing a static map using Stream in Java, we need to know what is static. static is a non-access modifier in Java used as blocks, variables, methods and nested classes. Hence, in order to create a static member(block, variable, method, nested class), we precede the declaration of blocks, variables, methods and nested classes with the ‘static’ keyword. Besides this, we know that using a static member, we can access it before any objects of its class made.
How to initialize a static Map using Stream in Java
Below is described process of initializing a static map using Stream in Java.
Static Map in Java:
A static map is a map that is declared to be as static, ie, we have it as a class member and hence can use it with class in Java.
Stream In Java:
A stream is a sequence of objects that supports methods by processing collections of objects in Java.
Procedure:
Following is the procedure we follow as to how to initialize a static map using Stream in Java
- We create a stream and insert the 2-dimensional values as Key-Value pairs in that stream. These Key-Value pairs values are used to instantiate the Map.
- Next, we use the collect() method of Stream so as to map the values from the stream to the map, ie, Collectors.toMap() method, the keyMapper and the ValueMapper.
Sample Code:
import java.util.*; import java.util.stream.Collectors; class staticMapJava { private static Map<String, String> myMap = Arrays.stream(new String[][] { { "a", "Welcome" }, { "b", "To" }, { "c", "CodeSpeedy!" }, { "d", "Happy" }, { "e", "Learning!" } }) .collect(Collectors.toMap(keyMapper -> keyMapper[0], valueMapper -> valueMapper[1])); public static void main(String[] args) { System.out.println(myMap); } }
Output:
{a=Welcome, b=To, c=CodeSpeedy!, d=Happy, e=Learning!}
Know More: map() in Python Stream in Java
Very well explained. The explanation and the code is very easy to understand.