1、Map接口方法分成3组操作:改变、查询和提供可视图。
A、改变:指的是允许从映射中添加和去除键-值对。键-值对都可以为null;但是,不能把Map作为,一个键或值添加给自身。
Object put(Object key, Object value)
Object remove(Object key)
void putAll(Map mapping)
从指定映射中将所有映射关系复制到此映射中(可选操作)。
void clean()
B、查询:允许检查映射内容,可以从一个映射空间键取得另一个空间的值。
Object get(Object key)
boolean containsKey(Object key)
如果此映射包含指定键的映射关系,则返回 true
boolean containsValue(Object value)
如果此映射将一个或多个键映射到指定值,则返回 true。
int size()
返回此映射中的键-值映射关系数。
boolean isEmpty()
如果此映射未包含键-值映射关系,则返回 true。
C、提供可视图:允许把键或值的组作为集合来处理。
public Set keySet()
返回此映射中包含的键的 Set 视图。
public Collection values()
返回此映射中包含的值的 Collection 视图。
public Set entrySet()
返回此映射中包含的映射关系的 Set 视图。
2、Map集合遍历方式,以HashMap为例:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class Test02 {
/**
* @param args
*/
public static void main(String[] args) {
HashMap<Integer, Integer> hashMap = new HashMap<>();
hashMap.put(4, 3);
hashMap.put(7, 5);
hashMap.put(7, 4);
hashMap.put(78, 7);
//遍历方式一
for (Integer string : hashMap.keySet()) {
System.out.println(string);
System.out.println(hashMap.get(string));
}
System.out.println();
//遍历方式二
Iterator<Map.Entry<Integer, Integer>> iterator = hashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<Integer, Integer> entry = iterator.next();
System.out.println(entry.getKey() + ", " + entry.getValue());
}
System.out.println();
//遍历方式三
for ( Map.Entry<Integer, Integer> entry : hashMap.entrySet()) {
System.out.println(entry.getKey() + ", " + entry.getValue());
}
System.out.println();
//遍历方法四
for (Integer v : hashMap.values()) {
System.out.println(v);
}
}
}