for(初始化语句; 布尔表达式; 更新语句) {
正文过程;
}
执行顺序:
- 初始化语句, 仅在循环开始前执行一次;
- 布亇表达式, 用于决定是否继续执行正文过程, 表达式中异常则结束循环;
- 正文过程, 如果过程中存在break, return或者异常, 循环结束(不会执行更新语句), 如果遇到continue, 则会执行更新语句后进入下一轮循环;
- 更新语句, 注意更新语句不做逻辑真假判断, 到这里一轮循环结束;
- 布亇表达式, 进入新一轮循环;
static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] args) {
int i =0;
for(foo('A');foo('B')&&(i<2);foo('C')) {
i++;
foo('D');
}
}
所以输出ABDCBDCB