for是用于循环的关键字,记得上大学学习c语言时,老师总跟我们提C语言基本逻辑:顺序,选择,循环。现在想想,java也是同理,程序真要分析一下,确实是由这三种语法组合而成的复杂机构体。说道for,因为是有相关关联的,就顺道提一下break和continue吧。
for的语法也不是很难,后跟一个括号里面跟的是循环条件(需要用分号隔开),然后在接一个大括号里面写入的是循环内容。for在jdk1.4以上的版本可以使用增强型for循环,这种循环可以看做是iterator循环的一种封装吧。先不说它,for循环遍历容器时一般通过两种方式实现循环,一种是通过索引的方式,一种是通过迭代器的方式,这两种方法的区别在于,当你不使用迭代器方式进行循环时,如果需要删除该元素时,会导致容器大小发生变化从而会报错,而调用迭代器的remove方法就可以避免这个错误(声明一下,foreach是无法实现remove方法的......)。在循环中结束循环有两种方式:1、循环条件已经执行完,正常结束 2、调用代码,强制结束。而结束循环就不得不提另外两个关键字:break和continue了,这两个关键字都可以结束循环,不过作用范围不同,continue是结束当前正在运行这一次循环,beak是结束整个大循环。在switch语句中,如果有条件匹配用的也是break。ok,说了那么多,贴上代码
public class ForDemo {
public static void test(){
for(int i=0;i<3;i++){
if(i==1){
continue;
}
System.out.println(i+1);
}
}
public static void test01(){
for(int i=0;i<3;i++){
if(i==1){
break;
}
System.out.println(i+1);
}
}
public static void main(String[] args) {
ForDemo.test();
System.out.println("===========");
ForDemo.test01();
System.out.println("===========");
List<Object> list=new ArrayList<>();
list.add(1);
list.add(2);
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
int object = (int) iterator.next();
System.out.println(object);
}
for(Object i:list){
int j=(int) i;
System.out.println(j);
}
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}
只做了很简单的demo,运行结果是:
1
3
===========
1
===========
1
2
1
2
1
2