Map的用法
- 初始化map
Map<String,String> map = new HashMap<String,String>();
- 赋值
map.push("key","value");
- 获取
map.get("key")
- 移除
map.remove("key");
- 清空、
map.clear();
类型区别
- HashMap(HashMap最多只允许一条记录的键为Null(多条会覆盖);允许多条记录的值为 Null)
- TreeMap(能够把它保存的记录根据键(key)排序,默认是按升序排序,也可以指定排序的比较器,当用Iterator 遍历TreeMap时,得到的记录是排过序的。TreeMap不允许key的值为null。)
- Hashtable(与 HashMap类似,不同的是:key和value的值均不允许为null;它支持线程的同步,即任一时刻只有一个线程能写Hashtable,因此也导致了Hashtale在写入时会比较慢。)
- LinkedHashMap(保存了记录的插入顺序,在用Iterator遍历LinkedHashMap时,先得到的记录肯定是先插入的.在遍历的时候会比HashMap慢。key和value均允许为空,非同步的。)
Map遍历
-
keySet()遍历
for(String key : map.keySet()){ // map要遍历的对象 ,key 每一个键值对
System.out.println(map.get(key)); // 输出每一个key相对应的value值
}
-
entrySet()遍历
for(Map.Entry<String,String> entry : map.entrySet()) { // entry 每一个键值对,map需要遍历的对象
System.out.println(entry.getKey()+",,,"+entry.getValue()); // getKey() 每一个key值,getValue()每一个value值
}