1、Map
1.1 特点:无序、以键值对的形式添加元素,键不能重复,值可以重复
它没有继承Collection接口
Map<String, Object> map =
new HashMap<String, Object>();
1.2 遍历
1.2.1 先取出保存所有键的Set,再遍历Set即可(2种)
1.2.2 先取出保存所有Entry的Set,再遍历此Set即可 (重要点)
Set<String> keySet = map.keySet();
for (String key : keySet) {
// System.out.println(key);
//通过键获取对应的值
Object value = map.get(key);
System.out.println(key+"="+value);
}
map.put("李东阳", "如花1");
map.put("李东阳", "范冰冰");
System.out.println("------------");
// map遍历方式2.先取出保存所有键值对(Entry)的Set,在遍历Set即可
Set<Entry<String, Object>> entrySet = map.entrySet();
for (Entry<String, Object> entry : entrySet) {
System.out.println(entry);
System.out.println(entry.getKey());
System.out.println(entry.getValue());
}
2.HashMap与HashTable之间的区别
同步既排队 线程安全的 hashtable 键不可以为null,值也不能为null
异步 非安全的 hashmap 键可以为null,值也可以为null
Map<String, Object> map =
new HashMap<String, Object>();
Map<String, Object> map1=
new HashMap<String,Object>();
map.put("a", "lx");
// map1.put(null, "lx");
Set<Entry<String, Object>> entrySet = map.entrySet();
for (Entry<String, Object> entry : entrySet) {
System.out.println(entry);
}