iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0
自我挑戰組

從免費網路資源中入門java系列 第 7

【Day7】Java流程控制 - 判斷式

  • 分享至 

  • xImage
  •  

所謂的流程控制是指「根據不同條件來執行不同的程式邏輯」,其中最常見的就是判斷式。
判斷式讓程式能夠根據條件來選擇不同的執行路徑,常見的判斷式包括 if-elseswitch

if-else 判斷式
if-else 判斷式顧名思義,如果符合條件的話走這,不然就走那。

基本的寫法如下

if (條件) {
    // 當條件為 true 時執行這裡的程式
} else {
    // 當條件為 false 時執行這裡的程式
}

下列範例用來說明是否已經成年,
如果age大於等於18,就印出「成年」;反之,如果age小於18,就印出「未成年」。

int age = 18;

if (age >= 18) {
    System.out.println("成年");
} else {
    System.out.println("未成年");
}
int score = 75;

if (score >= 90) {
    System.out.println("優");
} else if (score >= 80) {
    System.out.println("甲");
} else if (score >= 70) {
    System.out.println("乙");
} else {
    System.out.println("未達標準");
}

不論有多少個 else if,程式只會執行其中一個符合條件的分支內的程式。當第一個 if 條件為 true 時,會直接執行該區塊,並跳過其餘的 else if 或 else。如果第一個條件不成立,程式會繼續檢查接下來的 else if 條件,直到找到符合的條件為止。一旦符合某個 else if,它後面的 else if 和 else 區塊都不會再進行判斷。如果所有 if 和 else if 條件都不成立,最後會進入 else 區塊(若有寫else區塊的話)。

switch 判斷式
switch 判斷式適合用來處理多個具體值的情況。

switch (變數) {
    case 值1:
        // 當變數等於 值1 時執行這裡的程式
        break;
        // 遇到break就跳出switch,若無break,則會繼續執行下一條case
    case 值2:
        // 當變數等於 值2 時執行這裡的程式
        break;
    default:
        // 當變數不符合以上任何條件時執行這裡的程式
}

以一周七日為例

int day = 2;
switch (day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    
    // ... 以此類推
    default:
        System.out.println("未知");
}

另外,也能使用**三元運算子(Ternary Operator)**進行條件判斷,可以使程式碼顯得更簡潔,三元運算子適合用在簡單條件下(非黑即白的概念)的選擇。

例如:

int age = 18;
String result = (age >= 18) ? "成年" : "未成年";
System.out.println(result);

上一篇
【Day6】Java - Class 類別
下一篇
【Day8】Java流程控制 - 迴圈(Loops)
系列文
從免費網路資源中入門java30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言