Java Equivalent to Python Dictionaries Java Equivalent to Python Dictionaries python python

Java Equivalent to Python Dictionaries


Python's dict class is an implementation of what the Python documentation informally calls "mapping types". Internally, dict is implemented using a hashtable.

Java's HashMap class is an implementation of the Map interface. Internally, HashMap is implemented using a hashtable.

There are a few minor differences in syntax, and I believe the implementations are tuned slightly differently, but overall they are completely interchangeable.


The idea of dictionary and Map is similar. Both contain elements like

key1:value1, key2:value2 ... and so on

In Java, Map is implemented different ways like HashMap, or TreeMap etc. put(), get() operations are similar

import java.util.HashMap;Map map = new HashMap();// Put elements to the mapmap.put("Ram", new Double(3434.34));map.put("Krishna", new Double(123.22));map.put("Hary", new Double(1378.00));//to get elementsmap.get("Krishna"); // =123.22map.get("Hary"); // = 1378.00 

See documentation of HashMap in java8 https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html


One difference between the two is that dict has stricter requirements as to what data types can act as a key. Java will allow any object to work as a key -- although you should take care to ensure that the object's hashCode() method returns a unique value that reflects its internal state. Python requires keys to fit its definition of hashable, which specifies that the object's hash code should never change over its lifetime.