• 3.分支结构与循环结构


    1 程序结构

      程序结构分为顺序结构、分支结构、循环结构。分支结构有:if结构,if....else结构if...else if....else ,if...else结构,switch结构;循环结构有:while循环,do....while循环,for循环。

     

    2 分支结构

      ①if结构  语法:

      if(布尔表达式){

         //语句;

      }

      执行过程:如果布尔表达式为true执行其下语句,布尔表达式为false时不执行其下语句。

      {}可以省略,如果省略将执行第一个语句块。为了程序的可读性推荐不要省略{}

      ②if...else结构 语法:

      if(布尔表达式){

          //语句1

      }else{

         //语句2;

      } 

      执行过程:如果布尔表达式值为true,执行语句1,否则执行语句2.

      {}也是可以省略的,省略之后只执行第一个语句块。

    示例1:根据用户输入的年份,加上一个[0,10]随机数后,判断该年是否为闰年。

      分析:

      1.获取用户输入的年份:Scanner

      2.产生一个[0,10]之间的随机整数:Math.random()-->(0,1)之间的随机小数

      3.判断该年是为闰年,闰年的判断条件:能被4整除并且不能100整除;或者能被400整除。

      public class TestIfElse2{

        public static void main(String[] args){

          Scanner input = new Scanner(System.in);

          System.out.println("请输入一个年份:");

          int year = input.nextInt();

          //产生[0,10]之间的随机整数

          int random = (int)(Math.random()*11);

          year = year+random;

          //判断是否为闰年

          if((year%4==0&&year%100!=0)||year%400==0){

            System.out.println(year+"为闰年,共366天!");

          }else{

          System.out.println(year+"为平年,共365天!");

          }

        }

      }

    示例2:(if嵌套)

      if嵌套:一个if语句包含了其他的if语句。

      if(条件1){

        if(条件2){

          //语句;

        }

      }

     

      ③if....else if....else结构 语法:

      if(条件1){

         //语句1;

      }else if(条件2){

         //语句2;

      }else if(条件3){

        //语句3

      }....{

      }else{

        //语句N;

      }

      执行过程:先判断条件1是否成立,如果条件1成立执行语句1并跳出条件结构;如果条件1不成立继续判断其下的条件2,如果条件2成立执行语句2....,所有条件都不成立执行else中语句N.

      注意:条件的位置有可能影响执行结构,条件位置一般需要满足从范围小的条件到范围大的条件逐次摆放。

      ④switch结构

      switch可以代替多重if条件结构中等值判断。

      语法:

      switch(表达式){

          case 值1:

        语句1;

             [break];

          case 值2:

        语句2;

             [break];

         ....

         default

        语句N;

             [break];

      }

      执行过程:将表达式的值与case中的常量值挨个进行比较,如果匹配成功将执行其下语句,直到遇到break关键字跳出switch结构。

      注意:

      1)swtich中传入的表达式可以是byte,short,int,char,从JDK1.7以后支持String类型

      2)case后的常量值不能重复

      3)case语句中的break是可以省略的,但如果省略break将出现case穿透。

      4)default语句也是可以省略的。

    3 循环结构

      如果遇到需要反复做的事情,可以利用循环进行解决。

      ①while循环 语法:

      while(布尔表达式){

         //循环体

      }

      执行过程:

      步骤1:先判断布尔表达式值是否为true,如果为true进入步骤2

      步骤2:执行while中循环体,执行结束后回到步骤1

      注意:检查循环是否能退出(检查循环条件是否不满足的时候)

      特点:先判断,后执行,有可能一次都不执行。

     

      ②do...while循环 语法:

      do{

         //循环体;

      }while(布尔表达式);

      执行过程

      步骤1:先执行循环体,进入步骤2

      步骤2:判断布尔表达式是否为true,如果值为true,执行步骤1,否则退出循环。

      特点:先执行,后判断。执行会执行1次。

     

      ③for循环 语法:

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

          //循环体;

      }

      表达式1:循环变量的初始化,只会执行1次

      表达式2:循环条件

      表达式3:更改循环变量(步进)

      注意:从语法的角度上说表达式1,表达式2,表达式3都可以省略,分号不能省略。但是如果省略了表达式2和表达式3经常会造成死循环。终止执行:ctrl+c

      特点:先判断,后执行。有可能一次都不执行。

     

      执行过程:

      步骤1:先执行表达式1进行循环变量的初始化工作

      步骤2:执行表达式2进行循环条件的判断,如果条件为true,执行步骤3,否则退出循环。

      步骤3:执行循环体;

      步骤4:执行表达式3进行更改循环变量,然后执行步骤2。

     

    4 break和continue

        ①break关键字可以用于switch结构和循环结构

      作用: 1.如果用于switch结构,跳出当前的case语句

          2.如果用于循环结构中,跳出当前循环结构。

     ②continue关键字只能用于循环结构。

      作用:跳过本次循环,重新开始下一趟循环。

     

    5 return

      可以使用return关键字结束当前函数的执行。

      在函数中只要遇到了return关键字,终止当前函数(方法),并回调函数(方法)的被调用处。

     

  • 相关阅读:
    Thinkphp --- 入口文件
    Thinkphp --- 路由定义
    thinkphp --- 写入日志
    BeginnerAdmin后台框架的使用!
    windows本地环境如何用wamp配置多域名绑定访问
    微信小程序 --- 设置页面的标题
    豆瓣api开发
    微信开发 --- 微信支付
    微信小程序 --- 完成小程序支付功能
    thinkphp发起网络请求
  • 原文地址:https://www.cnblogs.com/nicepanda/p/6921883.html
Copyright © 2020-2023  润新知