For循环详解
1 package struct; 2 3 public class ForDemo01 { 4 public static void main(String[] args) { 5 int a = 1;//初始化条件 6 while(a<=100){//条件判断 7 System.out.println(a);//循环体 8 a += 2;//迭代 9 } 10 System.out.println("while循环结束!"); 11 //初始化//条件判断//迭代 12 for (int i = 1; i < 100; i++) { 13 System.out.println(i); 14 } 15 System.out.println("for循环结束!"); 16 } 17 }
//关于for循环有以下几点说明:
/*
最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
然后,检测布尔表达式的值。如果为true,循环体被执行;如果为false,循环终止,开始执行循环体后面的语句。
执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
再次检测布尔表达式。循环执行上面的过程。
*/
//死循环
for( ; ; ){
}
1 package struct; 2 3 public class ForDemo02 { 4 public static void main(String[] args) { 5 //练习:计算0-100之间的奇数和偶数的和 6 int oddSum = 0;//奇数 7 int evenSum = 0;//偶数 8 for (int i = 0; i < 100; i++) { 9 if (i%2!=0){ 10 oddSum += i;//奇数 // oddSum = oddSum + i; 11 }else{ 12 evenSum += i;//偶数 13 } 14 } 15 System.out.println("奇数的和:"+oddSum);//2500 16 System.out.println("偶数的和:"+evenSum);//2450 17 } 18 }
1 package struct; 2 3 public class ForDemo03 { 4 public static void main(String[] args) { 5 //练习2:用 while 或 for循环 输出1-1000之间能被5整除的数,并且每行输出3个 6 7 for (int i = 0; i <= 1000 ; i++) { 8 if (i%5==0){ 9 System.out.print(i+"\t"); 10 } 11 if (i%(5*3)==0){//每行 12 System.out.println(); 13 //System.out.print("\n"); 14 } 15 } 16 //println:输出完 全换行 17 //print:输出完 不会换行 18 } 19 }
1 package struct; 2 3 public class ForDemo04 { 4 public static void main(String[] args) { 5 /* 6 1 * 1 = 1 7 1 * 2 = 2 2 * 2 = 4 8 1 * 3 = 3 2 * 3 = 6 9 1 * 4 = 4 2 * 4 = 8 10 1 * 5 = 5 2 * 5 = 10 11 1 * 6 = 6 2 * 6 = 12 12 1 * 7 = 7 2 * 7 = 14 13 1 * 8 = 8 2 * 8 = 16 14 1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 15 */ 16 for (int i = 1; i<= 9 ; i++) {// 第二个数 17 for (int j = 1; j <= i; j++) { //第一个数 18 System.out.print(j + " * " + i + " = " + ( j * i) + "\t"); 19 } 20 System.out.println(); 21 } 22 23 } 24 }
/*①先打印第二列
* ②再把固定的1用一个循环包起来
* ③去掉重复项i<=j
* ④调整样式
* */