1、面试题:for与foreach的区别?
普通for循环在遍历集合时使用下标来定位集合中的元素,而foreach则是自动产生每一项。
相同点:都可以用来遍历
不同点:
1)使用foreach来遍历集合时,集合必须实现Iterator接口;
2)在用foreach遍历集合时,不能向集合中增加元素、删除元素,否则会抛ConcurrentModificationException异常。
3)当使用foreach循环基本类型时变量时不能修改集合中的元素的值,遍历对象时可以修改对象的属性的值,但是不能修改对象的引用;
List<ForE> list = new ArrayList<ForE>();
list.add(new ForE("apple", 10));
list.add(new ForE("banana", 20));
list.add(new ForE("orange", 30));
for(ForE f:list){
f.setAge(f.getAge()*2);
}
}
2、三种方法跳出循环
breakcontinue
return