分支和循环结构

程序的运行顺序:
  顺序结构:从程序开始,到程序结束
  分支结构:在顺序结构基础上,根据条件进行选择执行方向。
  循环结构:在顺序结构基础上,根据条件进行多次执行相同的或相似的代码

分支结构:根据条件的成立与否,选择执行方向。

  (一)if分支结构:
      语句1;
      if(条件表达式){
          代码块//条件成立时,执行的逻辑
      }
      语句2;
      执行逻辑:执行完语句1后,碰到if,一定会执行
               条件表达式,结果为true,就执行代码块,
           然后再执行语句2。
           结果为false,就跳过代码块,执行语句2
      

      if(条件表达式){
       代码块1//  条件成立时执行此代码块
      }else{
       代码块2//  条件不成立时执行此代码块
      }

      执行逻辑:当程序执行到if时,一定会执行条件表达式进行判断
                结果为true,就执行代码块1.
        结果为false,跳过代码块1,执行代码块2


    
     if(条件1){
          代码块1;
     }else if(条件2){
      代码块2
     }else if(条件3){
          代码块3
     }else{
          代码块4
     }

     执行逻辑:程序执行到if时,一定会执行条件1,进行判断
               结果为true,执行代码块1。
           结果为false,执行条件2,进行判断
           结果为true,执行代码块2.
           结果为false,执行条件3,进行判断
           ............

     当if语句中含有else{}部分时,一定会执行其中一条分支。
     没有else{}部分时,有可能一条分支都不执行


(二)switch-case语句
    格式:

    switch(整数表达式){
    case value1: 代码块1;[break];
    case value2: 代码块2;[break];
    ..........
    [default: 代码块n;]---[]表示可有可无
    }

    整数表达式:即能获得一个整数的表达式。
    但是jdk1.7版本以后,支持字符串表达式

    case后的值与()内的结果类型要相同

    break:有打断,毁掉,跳出,结束的含义

    执行逻辑:
         当程序遇到switch时,计算表达式的值,然后
     匹配case后的值,然后,执行对应的分支逻辑。
     如果此分支有break.就结束分支结构,如果此分支
     没有break,就继续执行下一条分支逻辑,直到
     遇到break或default或全部执行完后续的所有分支。
      if语句:
        执行分支的是一个条件表达式:
        如果有else{}部分,一定会执行其中一条分支。
     switch-case语句:
            执行分支的是一个整数或字符串表达式
        如果有default部分,一定会执行分支。
        一般与break连用

==================================================================
循环结构
        :当重复执行相同的代码或者是相似的代码时。

循环三要素:
   1): 循环变量的声明和初始化:用于控制循环次数的循环因子
   2): 循环条件: 用于判断是否执行相同或相似内容(循环体)的条件
   3):循环变量的改变方向: 向着循环结束的方向改变。
(1)for循环:

   语法:
      for(变量的声明和初始化;循环条件;变量的改变方向){
        循环体;
      }

   执行逻辑:
       程序遇到for时,一定执行 变量的声明和初始化
            然后执行循环条件的判断
        如果为false,会跳过循环结构,执行后续代码。
        如果为true,执行循环体,然后再执行变量的改变
        再执行循环条件的判断,
        .......

   循环体:是要重复执行的相同或相似逻辑


  
   break关键字:用在循环结构中时,表示结束/打断循环,
                用在多层循环时,退出一层循环
   continue关键字:用在循环结构中,表示结束当次循环体,继续
                  下一次循环


双层for循环
   总结:
        双层循环:
        外层变量执行一次,内层变量执行一遍
        或
        外层变量控制行数,内层变量控制列数

(2)while循环
    语法:

    while(循环条件){
       循环体
    }

    执行逻辑:
        当程序遇到while时,一定执行循环条件,
          如果判断结果为false,就结束循环结构,执行后续代码
          如果判断结果为true,就执行循环体,
          然后再判断循环条件......


(3)do-while循环
      语法:
      do{
       循环体
      }while(循环条件);


      执行逻辑:当程序遇到do关键字时,一定先执行一次
        循环体,然后再判断循环条件,
        如果条件为false,结束循环结构,执行后续代码
        如果条件为true,再执行一次循环体,
        然后再判断条件的成立与否
        ........

    
   while/do-while/for的区别:

   while/do-while:适合不知道循环次数的逻辑
   for:适合知道循环次数的逻辑

   while/for一般先判断条件,再执行循环体
   do-while:一定先执行一次循环体,再判断条件

   小技巧:什么时候使用while,什么时候使用do-while
         某些逻辑可以翻译成如下:

     当......就执行.....:适合使用while
     做.....直到.......:适合使用do-while

猜你喜欢

转载自blog.csdn.net/qq_42397691/article/details/81429797