1. 程式人生 > 其它 >switch case 和迴圈結構

switch case 和迴圈結構

1,分支結構

1.1 switch-case
switch (儲存選擇選項的變數) {
case 常量1:
	// 處理方式1;
	break;
case 常量2:
	// 處理方式2;
	break;
case 常量3:
	// 處理方式3;
	break;
default:
	// 最終處理方式
	break;
}
/*
注意事項:
1. switch case 分支結構,目前僅考慮 int 型別,其他型別暫時不考慮
2. break關鍵字用於跳出 switch case 對應大括號範圍。

執行流程:
程式執行到 switch - case ,取值 switch 之後小括號裡面的變數儲存資料      
內容,和大括號中的 case 之後的常量進行匹配操作,如果有對應匹配項,執行對應 
處理方式,如果沒有任何一個選項匹配,執行default中的最終處理方式。
*/

  // switch case
import java.util.Scanner;

class Demo1 {
public static void main(String[] args) {
	// choose 作為使用者選項輸入臨時儲存變數
	int choose = 0;
	Scanner sc = new Scanner(System.in);
	
	System.out.println("1. 胡辣湯");
	System.out.println("2. 扁粉菜");
	System.out.println("3. 羊雜湯");
	System.out.println("4. 熱乾麵");
	System.out.println("5. 豆漿+油條");
	System.out.println("6. 涼皮");
	
	choose = sc.nextInt();
	
	switch (choose) {
		case 1:
			System.out.println("8RMB");
			break;
		case 2:
			System.out.println("6RMB");
			break;
		case 3:
			System.out.println("20RMB");
			break;
		case 4:
			System.out.println("5RMB");
			break;
		case 5:
			System.out.println("7RMB");
			break;
		case 6:
			System.out.println("7RMB");
			break;
		default:
			System.out.println("選擇錯誤");
			break;
	    }
      }
 }
1.2 switch case 使用特徵
  1,case 之後不允許出現相同常量, CPU 無法執行,語法報錯
  2,超出 case - break 或者 default - break 語句無法執行,為無效語句,語法報錯
  3,break 可以省略, case 選擇會繼續執行到下一個 break 或者 整個結構大括號結束
  4,default 可以省略,但是不建議省略

2, 迴圈結構

2.1 為什麼要用迴圈
    程式碼中可能出現大量重複功能的程式碼,會導致
        1, 程式碼冗餘
        2, 閱讀性極差
        3, 維護性極差
2.2 while 迴圈結構
  // 格式
  while (/* 迴圈條件判斷 boolean true or false*/) {
      // 迴圈體
      // (迴圈條件修改)
    }
  /*
  執行流程:
      程式執行到 while 迴圈結構,首先判斷 while 之後小括號中迴圈條件是否為 true,如果為 true 執行迴圈體,再回到 while 之後的條件判斷,直到 迴圈條件為 false 終止迴圈!!!
  */

  // while 迴圈結構
  class Demo3 {
      public static void main(String[] args) {
	int num = 10;
	
	while (num > 0) {
		System.out.println("老王早上吃涼皮");
		num -= 1; // 迴圈條件修改/迴圈條件變更
	    }
    }
 }
2.3 do while 迴圈結構
  // 格式
  do {
      // 迴圈體
      // (迴圈條件修改)
  } while (/* 迴圈條件判斷 boolean true or false*/);
  /*
  執行流程:
      程式執行到 do while 迴圈結構,直接執行 do 之後大括號裡面的迴圈體內容,再來判斷 while 之後小括號中的迴圈條件是否為 true,如果為 true 繼續執行迴圈體,如果為 false 終止迴圈
   */

  // do while 迴圈結構
  class Demo4 {
      public static void main(String[] args) {
	      int num = 10;
	
	      do {
		   System.out.println("老鼠愛大米");
		   num -= 1;
	      } while (num > 0);
      }
  }
2.4 for 迴圈結構
  for (/* 迴圈條件初始化 */; /* 迴圈條件判斷 */; /* 迴圈條件變更 */) {
// 迴圈體
  }
    // for 迴圈
      class Demo5 {
      public static void main(String[] args) {
	  /*
	  for (迴圈條件初始化; 迴圈條件判斷; 迴圈條件變更) {
		// 迴圈體
	  }
	
	  tips:
		1. 通常情況下,for 迴圈中的迴圈變數採用 i j k l n m
		2. for 迴圈條件變更大量使用 自增自減運算子,迴圈條件變更可以認為是單獨成行
	  */
	  for (int i = 0; i < 10; i++) {
		System.out.println("敲起來!!!");
	  }
    }
  }