增强For遍历Map集合的要点!
import java.util.*;
class ForTest{
public static void main(String[] args){
HashMap<Integer,String>hm=new HashMap<Integer,String>();
hm.put(1,"xxc1");
hm.put(2,"xxc2");
hm.put(3,"xxc3");
/*Set<Integer>s=hm.keySet();
for(Integer i:s){
System.out.println(i+"=="+hm.get(i));
}*/
Set<Map.Entry<Integer,String>>s=hm.entrySet();
for(Map.Entry<Integer,String> me:s){
System.out.println(me.getKey()+"========"+me.getValue());
}
}
}
注意:
1.只要是迭代器Iterator能迭代的一定能用增强For进行遍历!Map集合必须先将键或者Map.Entry键值关系存入Set集合中。
2增强For和迭代器的区别:增强For只能获取集合里的元素,不能对集合进行操作,但是迭代器Iterator能对集合进行删除!ListIterator列表迭代器还能进行增删改查操作!
3.迭代器对集合的操作会使原集合发生变化,而For循环是不会发生改变的,例如在增强For遍历时,将其他值的引用给了For。
4增强For和普通For的区别:如果要打印100次Hello World 增强For是不能完成的!所以在遍历数组时,建议用传统For!
版权声明:本文为xuxiaocheng1原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。