JShell is a command-line prompt tool introduced in Java 9, and it is also called a REPL tool to evaluate simple statements, executes it, and print the output immediately.
A Map interface specifies a contract to implement collections of elements in the form of key/value pairs. Java collection classes that implement the Map interface are HashMap, LinkedHashMap, and TreeMap.
In the below code snippet, the elements of HashMap are not guaranteed to store either in an insertion order or in the sorted order of keys.
Snippet-1
jshell> HashMap<String, Integer> hashMap = new HashMap<>(); hashMap ==> {} jshell> hashMap.put("Adithya", 101); $2 ==> null jshell> hashMap.put("Jai", 102); $3 ==> null jshell> hashMap.put("Chaitanya", 103); $4 ==> null jshell> hashMap.put("Ravi", 104); $5 ==> null jshell> hashMap hashMap ==> {Chaitanya=103, Jai=102, Ravi=104, Adithya=101}
In the below code snippet, the elements of LinkedHashMap have stored in the insertion order.
Snippet-2
jshell> LinkedHashMap<String, Integer> linkedHashMap = new LinkedHashMap<>(); linkedHashMap ==> {} jshell> linkedHashMap.put("Raja", 101); $8 ==> null jshell> linkedHashMap.put("Adithya", 102); $9 ==> null jshell> linkedHashMap.put("Surya", 103); $10 ==> null jshell> linkedHashMap.put("Vamsi", 104); $11 ==> null jshell> linkedHashMap linkedHashMap ==> {Raja=101, Adithya=102, Surya=103, Vamsi=104}
In the below code snippet, the elements of TreeMap have stored in the natural sorted order of keys.
Snippet-3
jshell> TreeMap<String, Integer> treeMap = new TreeMap<>(); treeMap ==> {} jshell> treeMap.put("Raj", 101); $14 ==> null jshell> treeMap.put("Pavan", 102); $15 ==> null jshell> treeMap.put("Arjun", 103); $16 ==> null jshell> treeMap.put("Manoj", 104); $17 ==> null jshell> treeMap treeMap ==> {Arjun=103, Manoj=104, Pavan=102, Raj=101}