JAVA-基础-控制结构

1、控制结构
    控制结构是控制程序如何运行的特殊的语句结构。
    控制结构分为 顺序控制结构 分支控制结构 循环控制结构。

2、顺序控制结构
    除了分支控制结构 和 循环控制结构以外的语句都是按照顺序控制结构运行的。即,语句由上到下,由左到右依次执行。

3、分支控制结构
    1.if判断
      i. if语句
        if能够实现判断,经过判断的结构决定是否执行某段代码。
      基本结构:java

                        

      执行逻辑图:spa

    

    ii. if..else..语句3d

    基本结构:code

      

    执行逻辑图:blog

      

    

    iii. if..else if..else语句开发

    基本结构:it

      

    执行逻辑图:for循环

      

    2. switch..case..语句
      i. switch..case..
        根据输入项的值的不一样,走不一样分支代码。
        输入项的值只能是byte/short/char/int,jdk7以后,支持String。
      基本结构:class

          

      执行逻辑图:import

    

        case用来实现匹配,case是进入的位置,一旦匹配成功,则从当前case位置进入,执行以后的代码,以后的全部case和default也会被执行。
        switch中也能够带一个default,则前面全部的case若是都匹配不成功,由default进行匹配。
        若是不想以后的case和default执行,须要经过break跳出switch。

4、循环控制结构
    1. while循环
      i. while
      语法结构:

     1 while(判断条件){ 2 执行的内容 3 改变条件的语句 4 } 

      循环的三要素:判断的条件 执行的内容 改变条件语句
      执行逻辑图:

    

      2.  do...while  & while...do

        语法结构:

           

        执行逻辑图:

           

        

          

while 和 do..while的区别,在于while先判断后执行,while中的代码不必定可以执行到,但do..while是先执行后判断,不管如何,do中代码至少会执行一遍。do..while是能够用while替代的,但while不必定能被do..while替代.

      2.for循环

        i.for

          判断条件  执行的代码  改变条件的语句

          基本的语法结构:

            

          执行逻辑图:

            

          for循环相对于while循环,将循环要素提取到for的小括号中管理,使循环的代码结构更加清晰,便于开发维护。

          while和for本质上等价的,但for结构更加清晰,一般代码也更少,是开发中最经常使用的循环方式。

          for中的三个条件并不须要都存在,能够根据须要空置。
          for(;;){} //等价于死循环

 

      3.break continue
        i. continue
          继续当前循环
          一旦循环中遇到continue,则本次循环continue以后的代码再也不执行,回到循环开始位置继续下一次循环。
        ii. break
          跳出当前循环
          一旦循环中遇到break,则从break位置开始跳出整个循环语句,以后的循环再也不执行。

 

        iii. break tag
          在多层循环时,能够经过break tag 方式,指定在break时要跳出的是哪一层循环。
          这种写法会形成程序的可阅读性大幅度下降,不推荐使用。
          若是想要跳出多层许愿,须要一层一层break跳出。

案例:

  

 1 import java.util.Scanner;  2 /**  3  continue break  4 */  5 public class Demo05{  6 public static void main(String args[]){  7 //1.计算1-100的偶数和  8 /*  9  int sum = 0; 10  for(int i=1;i<=100;i++){ 11  if(i%2==0){ 12  sum+=i; 13  }else{ 14  continue; 15  } 16  System.out.println("当前的sum为"+sum); 17  } 18 */ 19 20 //2.计算1-100的偶数和,若是和大于了500,则再也不继续循环 21 /* 22  int sum = 0; 23  for(int i=1;i<=100;i++){ 24  if(i % 2 == 0){ 25  sum += i; 26  }else{ 27  continue; 28  } 29  if(sum > 500){ 30  break; 31  } 32  System.out.println(sum); 33  } 34 */ 35 36 //3.break tag语法 37 /* 38  int x = 1; 39  tag1:for(;x>0;){ 40  System.out.println("外层循环开始。。"); 41  for(int i = 0;i<10;i++){ 42  System.out.println(i); 43  if(i == 5){ 44  break tag1; 45  } 46  } 47  System.out.println("外层循环结束。。"); 48  } 49  System.out.println("最外层.."); 50 */ 51 52 //4.break tag的替代写法 53 boolean outBreak = false; 54 for(;;){ 55 System.out.println("外层循环开始。。"); 56 for(int i = 0;i<10;i++){ 57  System.out.println(i); 58 if(i == 5){ 59 outBreak = true; 60 break; 61  } 62  } 63 if(outBreak){ 64 break; 65  } 66 System.out.println("外层循环结束。。"); 67  } 68 System.out.println("最外层.."); 69  } 70 }
相关文章
相关标签/搜索