1.基本语法结构:
for(初始化表达式;布尔表达式;更新表达式){
//是需要重复执行的代码片段【循环体:由Java语句构成】
}
注解:
初始化语句:(起始状态),一条或者多条语句
条件判断语句:结果值为Booleanl类型的表达式—>决定是否执行循环体
循环体语句:任意语句,反复执行
条件控制语句:常用一条语句来改变变量的值----->是控制循环向下执行,常见:i++;i- -;
注意:在for循环中,变量的作用域仅限于当前for循环内部使用!!!!
2.for循环的而执行过程/原理?【*很重要】
(1)初始化表达式;布尔表达式;更新表达式都不是必须的!【但是两个分号是必须的】
(2)初始化表达式最先执行,并且在整个for循环当中只执行一次
(3)布尔表达式必须是true/false,不能是其他值
(4)for的执行过程:
*先执行初始化表达式,并且该表达式只执行一次
*判断布尔表达式的的结果是true/false
-布尔表达式true
*执行循环体
*执行更新表达式
*判断布尔表达式的结果是true/false
-布尔表达式true
*执行循环体
*执行更新体
*判断布尔表达式的结果是true/false
-布尔表达式true
*执行循环体
*执行更新表达式
*判断布尔表达式的的结果是true/false
…
-布尔表达式的结果是false
循环结束
-布尔表达式false
*循环结束
接下来最重要的就是实际操作了,实例如下:
package com.itemma;
//这个例子是“水仙花数”,所谓水仙花数就是一个三位数的个位数的三次方,十位数的三次方,百位数的三次方的和等于这个三位数
public class Complex {
public static void main(String[] args) {
System.out.println("本系统是用判断数字发是否为水仙花数");
for(int number =100;number < 1000;number ++) {
int a = number%10;
int b = number/10 %10;
int c = number/100 %10;
if (a * a * a + b * b * b + c * c * c == number) {
System.out.println(number);
}
}
}
}
C:\Software\Java\jdk-17\bin\java.exe "-javaagent:E:\IntelliJ IDEA Community Edition 2021.3\lib\idea_rt.jar=62026:E:\IntelliJ IDEA Community Edition 2021.3\bin" -Dfile.encoding=UTF-8 -classpath "E:\IntelliJ IDEA Community Edition 2021.3\IDEA Studying\out\production\IDEA Studying" com.itemma.Complex
153
370
371
407
Process finished with exit code 0
//这个例子是:求1000以内的水仙花数的个数
public class Complex {
public static void main(String[] args) {
int count = 0;
for(int number = 100;number <1000;number++){
int a = number%10;
int b = number /10%10;
int c = number /100%10;
if(a*a*a + b*b*b + c*c*c ==number){
count += 1 ;
}
}
System.out.println(count);
}
}
C:\Software\Java\jdk-17\bin\java.exe "-javaagent:E:\IntelliJ IDEA Community Edition 2021.3\lib\idea_rt.jar=61987:E:\IntelliJ IDEA Community Edition 2021.3\bin" -Dfile.encoding=UTF-8 -classpath "E:\IntelliJ IDEA Community Edition 2021.3\IDEA Studying\out\production\IDEA Studying" com.itemma.Complex
4
Process finished with exit code 0
package com.itemma;
//接下来的一个例子就是:用for循环制作九九乘法表
public class Complex02 {
public static void main(String[] args) {
int number = 1;
for(int i = 1;i<=9;i++){
for(int j = 1; j<= i; j++){
number = i*j ;
System.out.println(" ");
System.out.print(i + "*" + j +"="+ number);
}
}
}
}