iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0

流程控制

  • 流程控制為程式中用於控制或執行某一段程式敘述的方式,分為判斷與迴圈兩種。
  1. 判斷:利用條件判斷進而決定要執行哪一段程式敘述,Java的條件式為以下兩種。
    (1)if
    (2)switch
  2. 迴圈:利用條件判斷進而控制某一段程式重複的執行,Java迴圈包含以下三種。
    (1)for
    (2)while
    (3)do...while

* 本章只有學習判斷。

if

* if內使用的條件判斷,一定要有小括號將判斷的條件程式括起來,判斷的結果一定是「true」或「false」。
實作範例

import java.util.Scanner;
public class Alex0921_1{
    public static void main (String[] args){
        System.out.println("請輸入成績:");
        Scanner sc = new Scanner(System.in);
        int grade = sc.nextInt();
        if(grade >= 60){
            System.out.println("成績及格!");
        }
    }
}
請輸入成績:85
成績及格!

if的複合程式敘述

* 當if後有兩個以上的程式敘述,便稱其為「複合程式敘述」,此時必須要用大括號括起來。
圖例:

if(判斷條件){
    程式敘述一;
    程式敘述二;
}
else{
    程式敘述三;
    程式敘述四;
}

實作範例

import java.util.Scanner;
public class Alex0921_2{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        Syetem.out.print("請輸入一個整數數字:");
        int value = sc.nextInt();
        int remain = value % 2;
        if(remain == 1){
            System.out.printf("%d 除以2的結果,餘數是 %d \n", value, remain);
            System.out.printf(value + "為奇數");
        }else
            System.out.println(value + "為偶數");
    }
}
請輸入一個整數數字:85
85除以2的結果,餘數是1
85為奇數

switch

  • switch為Java提供的另一個條件判斷敘述式,只能比較數值或字元,但適當使用會比if更有效率。
    switch語法結構如下:
switch(變數或運算式){
    case 符合數字或字元:
        程式敘述一;
        break;
    case符合數字或字元:
        程式敘述二;
        break;
    case 符合數字或字元:
        程式敘述三;
        break;
    default:
        程式敘述四;
}

程式範例試做:

import java.util.Scanner;
public class Alex0921_3{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.print("請輸入分數+");
        float score = sc.nextFloat();
        int level = (int) score/10;
        switch(level){
            case 10:
            case 9:
            case 8:
                System.out.println("A級");
                break;
            case 7:
                System.out.println("B級");
                break;
            case 6:
                System.out.println("C級");
                break;
            case 5:
                System.out.println("D級");
                break;
            default:
                System.out.println("再接再厲(E級)");
        }
    }
}

程式執行結果:

請輸入分數:87.5
A級

上一篇
Java程式語法-2
下一篇
Java流程控制-2
系列文
自學Java物件導向程式語言30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言