增强for循环

在上面这个例子 增强型的for循环 和普通for循环一样
增强型的for循环 优点主要体现在集合中,随便举个例子
比如对 set 的遍历
一般是迭代遍历:
Set<String> set = new HashSet<String>();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
 String str = it.next();
 System.out.println(str);
}
for循环遍历:
for (String str : set) {
     System.out.println(str);
}
是不是简单些?

优点还体现在泛型 假如 set中存放的是Object

Set<Object> set = new HashSet<Object>();
for循环遍历:
for (Object obj: set) {
     if(obj instanceof Integer){
               int aa= (Integer)obj;
            }else if(obj instanceof String){
              String aa = (String)obj
            }
             ........
}
如果你用Iterator遍历,那就晕了
map list 也一样

唯一的缺点就是 在遍历 集合过程中,不能对集合本身进行操作
 for (String str : set) {
  set.remove(str);//错误!
 }

你可能感兴趣的:(增强for循环)