import org.junit.Test;
public class DemoFor {
/*
* for( 代码块1 ; 代码块2 ; 代码块3 ){ }
* ---------------------------------------
* 代码块1: 在for循环之前,只执行一次,什么代码都可以,也可以不写。
* 代码块2: boolean值或boolean表达式。值为true时,继续下一次循环;值为false时,结束循环;也可以不写。
* 代码块3: 在每次for循环结束时,都会执行一次,也可以不写。
*/
/**
* demo1:(设置了for开始前要执行的代码,结束条件,每次结束时要执行的代码)
* for (int i = 0; i < 10; i++){}
*/
@Test
public void testName1() throws Exception {
for (int i = 0; i < 10; i++) {
System.out.println("第" + (i + 1) + "次循环..., i= " + i);
}
}
/**
* demo2:(for中未设置结束条件,在for后面的代码块中设置了结束条件)
* for (int i = 0;; i++) {}
*/
@Test
public void testName2() throws Exception {
for (int i = 0;; i++) {
if (i >= 10) {
break;
}
System.out.println("第" + (i + 1) + "次循环..., i= " + i);
}
}
/**
* demo3:(for中未设置结束条件,也未指定在for每次循环结束后要执行的代码)
* for (int i = 0;;) {}
*/
@Test
public void testName3() throws Exception {
for (int i = 0;;) {
if (i >= 10) {
break;
}
System.out.println("第" + (i + 1) + "次循环..., i= " + i);
i++;
}
}
/**
* demo4:(for中什么都不设置,无限循环)
* for (;;) {}
*/
@Test
public void testName4() throws Exception {
int i = 0;
for (;;) {
if (i >= 10) {
break;
}
System.out.println("第" + (i + 1) + "次循环..., i= " + i);
i++;
}
}
/**
* demo5:(for的代码块1声明多个变量,代码块2是一个比较复杂的boolean表达式,代码块3有多个动作)
*/
@Test
public void testName5() throws Exception {
for (int i = 0, j = 0; i < 10 && j < 5; i++, j++) {
System.out.println("第" + (i + 1) + "次循环..., i= " + i + ", j=" + j);
}
}
}