程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 基於java中的流程控制語句總結(必看篇)

基於java中的流程控制語句總結(必看篇)

編輯:關於JAVA

程序的結構分類:

順序結構:按照寫代碼的順序 一次執行 

選擇結構:根據條件的不同有選擇的執行不同的代碼

循環結構:在一定條件下 反復執行某一片代碼

選擇結構:

也叫分支結構 根據條件的不同,有選擇的執行某一片代碼 ,Java提供了兩種 if結構 switch結構

if分為三種格式:

if的第一種格式

  if(條件){
    語句塊
  }

執行流程:

先判斷條件, 如果為真 則語句塊執行,否則 語句塊不執行

代碼演示:

public static void main(String[] args) {
    System.out.println("開始");
    // 定義兩個變量
    int a = 10;
    int b = 20;

    if (a == b) {
      System.out.println("a等於b");
    }

    int c = 10;
    if (a == c) {
      System.out.println("a等於c");
    }

    System.out.println("結束");
  }

if的第二種格式:

if(條件){

  語句塊 1

}else{

  語句塊2

}

執行流程:

先判斷條件的真假, 如果為真 則只執行語句塊1, 否則, 只執行語句塊2

代碼演示:

public static void main(String[] args) {
    System.out.println("開始");
    // 判斷給定的數據是奇數還是偶數
    // 定義變量
    int a = 100;
    // 給a重新賦值
    a = 99;

    if (a % 2 == 0) {
      System.out.println("a是偶數");
    } else {
      System.out.println("a是奇數");
    }

    System.out.println("結束");
  }

if語句的第三種格式:

if(條件1){

  語句塊1
}else if(條件2){

  語句塊2
}else if(條件3){
  語句塊3
}
...
else if(條件n){

  語句塊n
}else{

  語句塊n+1
}

執行流程:

先判斷條件1,如果為真 則執行語句塊1,執行完畢,跳出整個if結構執行if下面的語句, 否則判斷條件2,

如果條件2為真,則執行語句塊2,執行完畢跳出

整個if結構執行if下面的語句, 如果條件2也為假,則判斷條件3,如果為真... 如果判斷到條件n都為假,

則執行else中的語句塊n+1

代碼演示:

x和y的關系滿足如下:
x>=3 y = 2x + 1;
-1<=x<3 y = 2x;
x<=-1 y = 2x – 1;

根據給定的x的值,計算出y的值並輸出。

public static void main(String[] args) {

    int x = 5;
    int y;
    if (x >= 3) {
      y = 2 * x + 1;
    } else if (x >= -1 && x < 3) {
      y = 2 * x;
    } else {
      y = 2 * x - 1;
    }

    System.out.println("y的值是:"+y);
  }

選擇結構switch

語法結構

switch(表達式){
case 目標值1:
語句塊1
break;
case 目標值2:
語句塊2
break;
case 目標值3:
語句塊3
break;
...
case 目標值n:
語句塊n+1
break;
default:
語句塊n+1
break;

}

執行流程:

先計算表達式的結果 A ,使用A順次的與對應的目標值進行比較,一旦發現有相等的目標值, 就停止比較,

執行對應的語句塊, 再執行break跳出整個switch結構, 如果從上往下比較都沒有目標值與A相等則執行

語句塊n+1 結束switch

要求:

表達式: 表達式的結果,在JDK1.1~1.4時代 表達式的結果的數據類型 只能是 char byte short int

在JDK1.5~1.6時代 表達式的結果的數據類型 只能是 char byte short int enum(枚舉)

在JDK1.7+時代 表達式的結果的數據類型 只能是 char byte short int enum(枚舉) ,String(字符串)

目標值:

目標值的數據類型 與表達式結果的數據類型要匹配

目標值 不能重復

代碼演示:

根據鍵盤錄入的數值1、2、3...7輸出對應的星期一、星期二、星期三...星期日

public static void main(String[] args) {
    //創建鍵盤錄入對象
    Scanner sc = new Scanner(System.in);
    
    //接收數據
    System.out.println("請輸入一個數字(1-7):");
    int weekday = sc.nextInt();
    
    //switch語句實現選擇
    switch(weekday) {
    case 1:
      System.out.println("星期一");
      break;
    case 2:
      System.out.println("星期二");
      break;
    case 3:
      System.out.println("星期三");
      break;
    case 4:
      System.out.println("星期四");
      break;
    case 5:
      System.out.println("星期五");
      break;
    case 6:
      System.out.println("星期六");
      break;
    case 7:
      System.out.println("星期日");
      break;
    default:
      System.out.println("你輸入的數字有誤");
      break;
    }  
  }

循環結構:

同一件事反復做 , 反復執行同一片代碼

循環的構成:

初始化語句
循環出口(條件)
循環體
循環增量

有三種 循環結構:

for 循環 while 循環 do...while循環

for循環:

語法格式:

for(初始化語句;條件;步進表達式){

循環體
}

執行流程:

第一步: 初始化語句

第二步: 判斷條件, 如果條件為真 則進入第三步 ,條件為假則進入第五步

第三步: 執行循環體

第四步: 執行步進表達式 進入第二步

第五步: 結束循環

代碼演示:

統計“水仙花數”共有多少個

所謂的水仙花數是指一個三位數,其各位數字的立方和等於該數本身。

public static void main(String[] args) {
    //1.定義一個統計變量,初始值為0
    int count = 0;
    
    //2.使用for循環獲取所有的三位數
    for(int x=100; x<1000; x++) {
      //3.拆分三位數的百位,十位,個位
      int ge = x%10;
      int shi = x/10%10;
      int bai = x/10/10%10;
      
      //4.利用公式判斷這個三位數是否為水仙花數,如果是,統計變量++
      if((ge*ge*ge+shi*shi*shi+bai*bai*bai) == x) {
        count++;
      }
    }
    
    //5.循環結束之後,打印統計結果
    System.out.println("水仙花數共有:"+count+"個");
  }

while 循環:

語法結構:

初始化語句

while(條件){
循環體
步進語句
}

執行流程:

第一步: 初始化語句

第二步: 判斷條件, 如果條件為真, 則進入第三步,如果條件為假, 則進入第五步

第三步: 執行循環體

第四步: 執行步進語句, 再進入第二步

第五步: 結束循環

do ... while循環

語法格式:

初始化語句

do{
循環體
步進語句

}while(條件)

執行流程:

第一步: 初始化語句

第二步: 執行循環體

第三步: 執行步進語句

第四步: 判斷條件,如果條件為真,進入第二步, 否則進入第五步

第五步: 結束循環

三種循環的區別:

雖然可以完成同樣的功能,但是還是有小區別:

do…while循環至少會執行一次循環體。

for循環和while循環只有在條件成立的時候才會去執行循環體

for循環語句和while循環語句的小區別:

使用區別:控制條件語句所控制的那個變量,在for循環結束後,

就不能再被訪問到了,而while循環結束還可以繼續使用,如果你想繼續使用,

就用while,否則推薦使用for。原因是for循環結束,該變量就從內存中消失,

能夠提高內存的使用效率。

循環使用推薦for -- while -- do..while

跳轉語句可以控制循環的執行:

有兩種

break : 在循環中使用的時候 表示結束當前循環

在switch語句中使用 表示跳出當前的switch結構

continue: 在循環中使用, 表示結束本次循環 進行下一次循環

跳轉語句 脫離循環沒有意義

以上這篇基於java中的流程控制語句總結(必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved