Map - 哈希表

Map 是一种关联数组的数据结构,也常被称为字典或键值对。

编程实现

Python

在 Python 中 dict(Map) 是一种基本的数据结构。

  1. # map 在 python 中是一个keyword
  2. hash_map = {} # or dict()
  3. hash_map['shaun'] = 98
  4. hash_map['wei'] = 99
  5. exist = 'wei' in hash_map # check existence
  6. point = hash_map['shaun'] # get value by key
  7. point = hash_map.pop('shaun') # remove by key, return value
  8. keys = hash_map.keys() # return key list
  9. # iterate dictionary(map)
  10. for key, value in hash_map.items():
  11. # do something with k, v
  12. pass

Java

Java 的实现中 Map 是一种将对象与对象相关联的设计。常用的实现有HashMapTreeMap, HashMap被用来快速访问,而TreeMap则保证『键』始终有序。Map 可以返回键的 Set, 值的 Collection, 键值对的 Set.

  1. Map<String, Integer> map = new HashMap<String, Integer>();
  2. map.put("bill", 98);
  3. map.put("ryan", 99);
  4. boolean exist = map.containsKey("ryan"); // check key exists in map
  5. int point = map.get("bill"); // get value by key
  6. int point = map.remove("bill") // remove by key, return value
  7. Set<String> set = map.keySet();
  8. // iterate Map
  9. for (Map.Entry<String, Integer> entry : map.entrySet()) {
  10. String key = entry.getKey();
  11. int value = entry.getValue();
  12. // do some thing
  13. }