Map集合的遍历方式:foreach遍历、iterator迭代器,不能使用for遍历(这是因为Map不支持随机访问数组中的元 素,所以不能通过数组下标来遍历)
Map集合遍历的方法有:map.keySet()、map.entryLSet()、map.values()。
map.keySet():通过这个方法得到map集合中的键的set集合,然后调用map集合的get()方法,参数是set 集合中的key,就得到相对应键的值。
map.entrySet():通过这个方法得到map集合中的键值对的entrySet集合,调用map.entrySet.getKey()方法得到键 的集合,调用map.entrySet.getValue()方法得到值的集合。
map.values():通过这个方法直接得到的是map集合中的值,得不到map集合的键。
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<Integer, String>();
map.put(1, "abc");
map.put(2, "abc");
map.put(3, "abc");
//使用Map.keySet()方法遍历key得到value值
for (Integer keys : map.keySet()) {//map.keySet()返回的是所有key的set的集合
String str = map.get(keys);//得到每个key的value值
System.out.println(keys + ":" + str);
}
//使用Map.entrySet()方法遍历
for (Map.Entry<Integer, String> entry : map.entrySet()) {//map.entrySet()返回的是所有entrySet的set集合
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//使用Map.values()遍历
for (String value : map.values()) {
System.out.println("value= " + value);//直接得到值,不能得到键
}
}
}