HashMap
- HashMap 又称哈希映射或散列映射,其实现 Map 并扩展了 AbstractMap,本身没有增加任何新的方法;
- HashMap 是无序的,元素加入散列映射的顺序并不是它们被迭代器读出的顺序;
- HashMap 通过哈希表计算 键-值 的存储位置,最多允许一个 null,不支持线程同步;
- HashMap 在面对大型的集合时,可以使 get() 和 put() 的运行时间保持恒定;
1. 构造方法
构造方法 |
说明 |
HashMap() |
构造一个默认的散列映射 |
HashMap(Map m) |
用 m 的元素初始化散列映射 |
HashMap(int capacity) |
将散列映射的容量初始化为 capacity |
HashMap(int capacity, float fillRatio) |
用参数初始化散列映射的容量和填充比 |
2. 类的使用
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class test {
public static void main(String[] args) {
HashMap hm = new HashMap();
hm.put("001", "apple");
hm.put("002", "banana");
Set s = hm.entrySet();
Iterator it = s.iterator();
while (it.hasNext()) {
Map.Entry m = (Map.Entry) it.next();
System.out.print(m.getKey() + ": ");
System.out.println(m.getValue());
}
hm.put("001", new String("dog"));
System.out.println(hm.get("001"));
s = hm.keySet();
it = s.iterator();
String key = "";
while (it.hasNext()) {
key = (String) it.next();
System.out.println(key + ":" + hm.get(key));
}
}
}