允许将三个必要条件都在()内的
用;分割三个条件
形式:
for(1初始值;2终点判定条件;4变化量){
3好多好多执行的代码
}
循环三要素:
初始值 终点判定条件 变化量

对比实例:模拟操场跑圈

  1. public class TestFor{
  2. public static void main(String[] args){
  3. for(int round=1;round<=5;round++){
  4. System.out.println("跑到第"+round+"圈啦");
  5. }
  6. }
  7. }

输出结果:
跑到第1圈啦
跑到第2圈啦
跑到第3圈啦
跑到第4圈啦
跑到第5圈啦

  1. public class TestFor2{
  2. public static void main(String[] args){
  3. int round=1;
  4. for( ; round<=5 ; round++){
  5. System.out.println("跑到第"+round+"圈啦");
  6. }
  7. System.out.println("循环执行完毕"+round);
  8. }
  9. }

输出结果:
跑到第1圈啦
跑到第2圈啦
跑到第3圈啦
跑到第4圈啦
跑到第5圈啦
循环执行完毕6

  1. public class TestFor3{
  2. public static void main(String[] args){
  3. int round=1;
  4. for( ; round<=5 ; ){
  5. round++;
  6. System.out.println("跑到第"+round+"圈啦");
  7. }
  8. System.out.println("循环执行完毕"+round);
  9. }
  10. }

输出结果:
跑到第2圈啦
跑到第3圈啦
跑到第4圈啦
跑到第5圈啦
跑到第6圈啦
循环执行完毕6

  1. public class TestFor4{
  2. public static void main(String[] args){
  3. for(int round=1;round<=5;round++){
  4. System.out.println("跑到第"+round+"圈啦");
  5. }
  6. System.out.println("循环执行完毕"+round);
  7. }
  8. }

编译结果:
TestFor4.java:6: 错误: 找不到符号
System.out.println(“循环执行完毕”+round);
符号: 变量 round
位置: 类 TestFor4
1 个错误

例:小学数学应用题

操场上有一百多人,让他们排队,3个人一组多一个,4个人一组多两个,5个人一组多两个
求解:操场上有多少人?
解:设操场人数为x人
x%3==1 x%4==2 x%5==2
但我想请计算机帮忙,计算机到底会不会计算?
说明:计算机不是计算出来的,而是尝试出来的,但是计算机试的过程很快,不过计算机挨个尝试得有个范围,所以该题可以让计算机在100-200人数内挨个尝试哪个数字符合条件。

  1. public class ForDemo1{
  2. public static void main(String[] args){
  3. for(int x = 100;x<200;x++){
  4. if(x%3==1 && x%4==2 && x%5==2){
  5. System.out.println("操场上人数为"+x);
  6. }
  7. }
  8. }
  9. }

输出结果:
操场上人数为142

小任务1:

甲乙丙丁四个人加工零件加工的零件总数为370个
如果甲加工的零件数多10
如果乙加工的零件数少20
如果丙加工的零件数乘以2
如果丁加工的零件数除以2
则四个人加工的零件数就相等了
求四个人加工的零件数分别是多少?

  1. public class ForTask1{
  2. public static void main(String[] args){
  3. int x=1;
  4. for( ; x<=370 ; x++){
  5. if((x-10)+(x+20)+(x/2)+(x*2)==370){
  6. System.out.println("平均生产了" + x);
  7. System.out.println("甲生产了" + (x+10));
  8. System.out.println("乙生产了" + (x-20));
  9. System.out.println("丙生产了" + (x*2));
  10. System.out.println("丁生产了" + (x/2));
  11. }
  12. }
  13. }
  14. }

小任务2:

鸡兔同笼问题
小鸡2只脚兔子4只脚
小鸡+小兔子总数50只脚的总数160只
求小鸡和小兔子分别多少只?

小任务3:

通过循环找寻3位数字的水仙花数
153—> 1 5 3
1 + 125 + 27 = 153
100-999 直接挨个试
image.png