For循环:
虽然所有循环结构都可以用 while 或者 do...while 表示,但Java提供了另一种语句— —for循环,使一些循环结构变的更加简单。
for 循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
for 循环执行的次数是在执行前就确定的。语法格式:
for (初始化; 布尔表达式; 更新) {
//代码语句
}
1 package com.duan.struct; 2 3 public class ForDemo01 { 4 public static void main(String[] args) { 5 6 int a = 1;//初始化条件 7 8 while (a <= 100) {//条件判断 9 System.out.println(a);//循环体 10 a += 2;//迭代 11 } 12 13 System.out.println("while循环结束!"); 14 15 //初始化//条件判断//迭代 16 for (int i = 1; i <= 100; i++) { 17 System.out.println(i); 18 } 19 20 System.out.println("for循环结束!"); 21 22 //死循环 23 for(;;){ 24 25 } 26 } 27 }
关于For循环有以下几点说明:
1.最先执行初始化步骤。可以声明一种类型,但可以初始化一个或者多个循环控制变量,也可以是空语句。
2.然后,检测布尔表达式的值。如果为 true,循环体被执行。如果为 false,循环终止,开始执行后面的语句。
3.执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
4.再次检测布尔值。循环执行上面的过程。
好了,接下来做三道题理解一下:
练习1:计算1到100之间的奇数和偶数的和
练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
练习3:打印九九乘法表
1 package com.duan.struct; 2 3 public class ForDemo02 { 4 public static void main(String[] args) { 5 //练习1:计算1到100之间的奇数和偶数的和 6 7 int oddSum = 0; 8 int evenSum = 0; 9 10 for (int i = 0; i <= 100; i++) {//快捷键100.for 11 if (i % 2 != 0) {//奇数 12 oddSum += i;//oddSum = oddSum + i; 13 } else {//偶数 14 evenSum += i; 15 } 16 17 } 18 19 System.out.println("奇数的和:" + oddSum); 20 System.out.println("偶数的和:" + evenSum); 21 22 } 23 } 24 25 结果: 26 奇数的和:2500 27 偶数的和:2550
1 package com.duan.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.println(i + " ");// 一个制表位转义字符 10 } 11 if (i % (5 * 3) == 0) {//每行 12 System.out.println(); 13 //System.out.print(" "); 换行转移字符 14 } 15 } 16 17 //println 输出完,换行 18 //print 输出完,不会换行 19 20 } 21 }
1 package com.duan.struct; 2 3 public class ForDemo04 { 4 public static void main(String[] args) { 5 //练习3:打印九九乘法表 6 //1.我们先打印第一列,这个大家都应该会 7 //2.我们把固定的1再用一个循环包起来 8 //3.去掉重复项,i<=j 9 //4.调整样式 10 11 for (int j = 1; j <= 9; j++) {//外层控制行 12 13 for (int i = 1; i <= j; i++) {//内层控制列 14 System.out.print(i + "*" + j + "=" + (i * j) + " "); 15 } 16 17 System.out.println(); 18 } 19 20 } 21 } 22 23 结果: 24 1*1=1 25 1*2=2 2*2=4 26 1*3=3 2*3=6 3*3=9 27 1*4=4 2*4=8 3*4=12 4*4=16 28 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 29 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 30 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 31 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 32 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 33