增强型的for循环简化了集合的遍历,但是其只能获取集合元素,不能对集合元素进行操作。
缺点在于遍历集合或者数组的时候会丢掉索引信息。
格式:
for(数据类型 变量名:被遍历的集合或者数组){执行语句}
程序实例:
import java.util.*;
public class ForDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<String> frd= new ArrayList<String>();
frd.add("a1");
frd.add("a2");
frd.add("a3");
for(String s:frd){
System.out.println(s);//for高级循环遍历集合
}
int[] arraydemo={1,2,3,4,5};
for(int n=0;n<arraydemo.length;n++){
System.out.println(arraydemo[n]);//普通for循环遍历数组
}
for(int i:arraydemo){
System.out.println(i);//高级for循环遍历数组
}
//定义一个HashMap的集合
HashMap<Integer,String> frde=new HashMap<Integer,String>();
frde.put(1, "zhangsan");
frde.put(2, "lisi");
frde.put(3, "wangwu");
//使用keyset方式的高级for循环
Set<Integer> keySet=frde.keySet();
for(Integer i:keySet){
System.out.println(i+":"+frde.get(i));
}
//使用entrySet取出方式的高级for遍历
for(Map.Entry<Integer, String> name: frde.entrySet()){
System.out.println(name.getKey()+" "+name.getValue());
}
}
}