「9」循环控制

一、whiledo-while循环

1、while循环语句

  ●为什么需要循环语句?

    ●需要反复执行同样的操作

    ●如果不用循环语句,顺序执行相同代码,代码拖沓冗余

    ●循环语句精简代码,重用代码

    ●循环语句代码可读性、可维护性更好

  ●语法

    while、do-while和for均属于循环语句

 

    while(循环条件) {      ←满足条件:循环持续执行

      //循环操作语句     ←循环中被重复执行的操作

    }

  ●要点

    1.先判断再执行

    2.循环次数不定

    3.避免死循环

  ●流程图

  ●示例:输入一个正整数,把整数逆序输出,比如输入12345,输出54321。

    ●问题分析步骤:

      ●确定循环条件:什么情况下要一直循环下去。

      ●确定循环操作:确定循环做什么事情。

      ●把循环条件和循环操作语句填入合适的循环语句结构中即可。

import java.util.Scanner;
public class WhileDemo{
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个整数");
        int number=input.nextInt();
        //number=12345
        while(number!=0){
            int res=number%10;
            System.out.print(res);
            //number=number/10;
            number/=10;
        }
    }
}

2、do-while循环语句

  ●语法

    while循环又称当型循环

    do-while循环又称直到型循环

 

    do{

      //循环操作语句      ←先执行一次循环操作

    }while(循环条件);       ←满足条件:循环继续执行

  ●要点

    1.先执行再判断

    2.至少执行一次

    3.最后的分号勿漏

  ●流程图

  ●示例:计算从1开始的连续n个自然数之和,当其和值刚好超过100时结束,求这个n值。

    ●问题分析步骤:

      ●确定循环条件:什么情况下要一直循环下去。

      ●确定循环操作:确定循环做什么事情。

      ●把循环条件和循环操作语句填入合适的循环语句结构中即可。

public class DoWhileDemo{
    public static void main(String[] args){
        int n=0;//要被加的数
        int sum=0;//累加求和
        /*do{
            n++;
            sum+=n;
        }while(sum<=100);*/
        
        while(sum<=100){
            n++;
            sum+=n;
        }
        System.out.println("sum="+sum);
        System.out.println("n="+n);
    }
}

二、for循环

1、for循环语句

  ●语法

    参数初始化①  条件判断②   更新循环变量④

  for(   表达式1 ;     表达式2 ;     表达式3     ){

       ③循环操作 ;

  }

  执行顺序:1.参数初始化;2.条件判断,条件为true;3.循环体被执行;4.更新循环变量;转第二步

  ●要点

    1.第一次循环顺序:1、2、3、4

    2.以后循环顺序:2、3、4

    3.每次循环操作前提条件是2为真

  ●流程图

  ●注意事项

    1.for循环的3个表达式都可以省略

    2.表达式1可以是逗号分隔的多个变量初始化表达式,也可省略,我们可以把它提到for语句之前

    3.表达式2省略了会导致死循环。条件永远为true

    4.表达式3省略,可能也会导致条件永远成立,会形成死循环。我们也可以把它挪到循环体末尾

    5.3个表达式全部省略,会死循环

    6.强调:3个表达式都可以省略,但两个分号不能省略

2、while循环和for循环的对比

  ●循环类型

    while循环是不确定型循环(循环次数不确定)

    for循环是确定型循环(循环次数确定)

  ●相互转换

    while循环和for循环可以相互转换

  ●使用场合

    当循环次数确定时,使用for循环

    当循环次数不确定时,使用while循环

3、二重循环

  ●二重循环语法:

    for(表达式1;表达式2;表达式3){//外循环

      for(表达式1;表达式2;表达式3){//内循环

      }

    }

  ●二重循环的特点:

    ●在循环体内含有一个循环语句的循环称为二重循环

    ●当外循环循环一次,内循环要循环完毕,再回到外循环进入下一次循环,直到外循环循环完毕为止。

  ●计算某天星期几的方法

    星期× = 1 + 距离1900年1月1日的天数差 % 7

三、breakcontinue语句

1、break语法及使用

  ●语法

    ●break:改变程序控制流

      ●在switch/case语句中用于跳出switch代码块

      ●在循环语句中,用于跳出循环而执行后面的语句

  ●要点

    ●结束循环之用

    ●改变循环执行次数

    ●只跳出本循环(最近包含它的那个循环)

  ●扩展用法

    ●后跟标签

      定向跳转至标签处,可以突破本层循环限制,标签放在循环之前,和循环之间不能有其它语句。(循环前写上标签名冒号,给这个循环起名,跳出这个标签记号的循环)

2、continue语法及使用

  ●语法

    ●continue作用:跳过循环体中剩余语句而执行下一次循环

  ●要点

    ●没有结束循环

    ●没有改变循环执行次数

    ●只在本层循环中起作用

  ●扩展用法

    ●后跟标签

      定向跳转至标签处,可以突破本层循环限制,标签放在循环之前,和循环之间不能有其它语句。(循环前写上标签名冒号,给这个循环起名,跳到这个标签记号的循环)

转载于:https://www.cnblogs.com/zcb1990/p/7068976.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值