标签:foreach
格式:
for(元素类型 变量名 : Collection集合or数组) {
执行语句;
}
传统for和foreach的区别?
foreach循环必须有被遍历的目标,要么是Collection,要么是数组。
package cn.itcast.p6.foreach; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; public class ForeachDemo { public static void main(String[] args) { ArrayList<String> al = new ArrayList<String>(); al.add("abc1"); al.add("abc2"); al.add("abc3"); al.add("abc4"); al.add("abc5"); //for(Iterator<String> it = al.iterator(); it.hasNext(); ){ //System.out.println(it.next()); //Iterator里面有3个方法,比foreach多一个remove(),如果想在迭代中对元素进行操作,用迭代器 //} for(String str : al){ //只能对集合中元素遍历 System.out.println(str); } //可以遍历map吗? HashMap<String,String> hm = new HashMap<String,String>(); hm.put("zhangsan","beijing"); hm.put("lisi","beijing"); hm.put("wangwu","beijing"); //Iterator<String> it = hm.keySet().iterator(); //while(it.hasNext()){ //System.out.println(it.next()); //} for(String key : hm.keySet()){ String value = hm.get(key); System.out.println(key+":"+value); } int[] arr = {3,1,5}; //建议遍历数组时,使用传统for循环。因为可以对数组的角标进行操作。 for(int i : arr){ System.out.println("i="+i); } } }
标签:foreach
原文地址:http://8477424.blog.51cto.com/8467424/1786356