// must use object, can't use primitive type
// array based data structure
Map<Object, Object> map = new HashMap<>();
map.size();
map.isEmpty(); // return boolean
map.put(key, value); // return value, O(1)
map.get(key); // return value, O(1)
map.containsKey(key); // boolean, O(1)
map.remove(key); // return value, O(1)
map.keySet(); // return a set of key, Set<key>
for (String str: map.KeySet()) {} // 遍历key
map.entrySet(); // return a set of entry,