java基础核心---4

For循环

什么是循环

循环在生活中随处可见,循环语句可以在满足循环条件的情况下,反复执行某一段代码。这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

PS:在使用循环之前,需要先搞清楚“什么时候要做什么事”。因为循环不能一直不停

循环的作用

for循环可以在循环条件满足的情况下,反复执行{}大括号内的代码块。

执行顺序:声明循环变量——>判断循环条件——>执行循环代码——>迭代——>判断循环条件…此段代码意义:声明钱的变量,判断是否挣够500万,如果没挣够,继续工作,工作后钱增加,再进行判断。

循环结构的组成:
1.初始化语句。
一条或者多条语句,这些语句完成一些初始化操作。
2.判断条件语句。
这是一个boolean 表达式,这个表达式能决定是否执行循环体
3.循环体语句。
这个部分是循环体语句,也就是我们要多次执行的代码块
4.迭代
这个部分是改变循环变量值的,让循环能在合适的时候退出

PS:判断条件语句的结果是一个boolean类型

PS:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略

PS:for循环中的循环变量在循环外部无法使用

for循环的使用方法

语法

   for(声明循环变量;循环条件;迭代){
        被循环的代码块
  }

套用语法

for(int money = 0;money < 500万; money++){
         继续工作
  }

执行流程
在这里插入图片描述
循环结构

public class TestCar {
public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    for (int money = 0; money < 500; money++){
        System.out.println("继续努力工作...");
    }
  }
}

分析:由于钱不够需要继续工作,所以继续工作是要重复执行的代码块。

而此块代码是否要重复执行取决于钱是否挣够,所以钱是否挣够是循环判断条件。

而每天工作完成后工资会增加,所以迭代是工资增加。

while循环

语法

声明循环变量
  while(循环判断){
        被循环的代码块
        迭代
  }

套用方法

int money = 0;      
  while(money < 500){
         继续工作
         money++;
  }

while循环的使用方法

for循环语句和while循环语句可以等价转换,循环需要的内容只是换了位置而已。

不同点:在for循环中声明的循环变量无法在循环外部使用,而while循环却是在循环结构外部声明的循环变量,所以即便循环结束,也可以继续使用。但更推荐使用for循环,for循环的循环变量在循环结束后会直接被销毁,更合理的使用内存空间。

执行流程
在这里插入图片描述

do-while循环

语法

声明循环变量
  do{
        被循环的代码块
        迭代
  }while(循环判断);

套用语法

  int money = 0;      
  do{
         继续工作
         money++;
  }while(money < 500);

do-while循环的使用方法

根据刚才的操作,for循环与while循环都是先进行循环条件判断,在执行循环内的代码。而do-while循环更加特殊,它会先执行循环内的代码,再进行循环条件的判断。如果循环条件最一开始就不满足,for循环和while循环一次都不会执行,而do-while循环由于先执行循环体的原因,即便不满足也会执行一次。

三种循环的比较

for循环
for(声明循环变量;循环条件;迭代){
被循环的代码块
}
1.结构紧凑
2.书写规范
3.内存使用合理
4.可预知次数的循环
5.推荐使用
while循环

  声明循环变量
  while(循环判断){
        被循环的代码块
        迭代
  }

1.语法宽松
2.适应各类循环
3.无法预知次数的循环
do-while循环

  声明循环变量
  do{
        被循环的代码块
        迭代
  }while(循环判断);

1.优先执行循环代码
2.不常使用

break与continue

break

for(int i = 0;i < 500;i++){
        System.out.print(“做俯卧撑”);
  }

根据之前的操作经验,这样的语法只能让循环执行500次,却不能中途退出,而在现实中,中途退出的情况也有很多。
改后:

  String jc = “还能坚持”;
  for(int i = 0;i < 500;i++){
        System.out.print(“做俯卧撑”);
        System.out.print(“还能坚持吗?”);
        jc = in.next();
        if(jc.equals(“坚持不住”) ){
              break;
        }
  }

break是退出循环。当循环中代码执行到break关键字时,会立即退出循环,继续执行循环结构之后的代码。

执行流程
在这里插入图片描述

continue

  String jc = “还能坚持”;
  for(int i = 0;i < 500;i++){
        System.out.print(“做俯卧撑”);
        System.out.print(“还能坚持吗?”);
        jc = in.next();
        if(jc.equals(“坚持不住”) ){
              break;
        }
  }

由于需求的变化,我们不能直接退出循环,必须继续循环,但其间有一些循环代码还未执行完就开始执行下一次循环。

  String jc = “还能坚持”;
  for(int i = 0;i < 500;i++){
        System.out.print(“俯卧”);
        System.out.print(“还能坚持吗?”);
        jc = in.next();
        if(jc.equals(“坚持不住”) ){
              continue;
        }
        System.out.print(“撑”);
  }

continue是跳过本次循环。当代码执行遇到continue时,会将本次循环终止,但是循环结构不退出,继续执行迭代部分并开始下一次循环。

执行流程
在这里插入图片描述

比较

break:
1.退出,终止
2.可用在循环和switch
3.继续之后结构之后的代码
4.break之后不能写代码
continue:
1.跳过,继续
2.可用在循环
3.不退出循环,进行下一次循环
4.continue之后不能写代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值