條件式的表示法
經過條件判斷最後得到 true 或 false 的程式,在 Jav
a 中被稱之為「條件式」。 true 代表條件式的結果為
真、 false 代表條件式的結果為假。
關係運算子
為了要比較大小關係而使用的大於 (>) 、小於 (<) 等 符號,被稱為關係運算子 (relational operator) 。
關係運算子 條件式的結果要等於 true ,前提是…
== 右邊的值等於左邊的值 != 右邊的值不等於左邊的值 > 左邊的值大於右邊的值
>= 左邊的值大於或等於右邊的值 < 左邊的值小於右邊的值
<= 左邊的值小於或等於右邊的值
if 敘述
當括號內的條件式為真 (true) 時,才會執行 if 內部 的其他程式;如果為假 (false) ,則不會進入執行。
if (條件式)
其他敘述句 ;
條件式為真 (true) 時才會進入 執行其他敘述句
import java.io.*;
class Sample1 {
public static void main(String args[]) throws IOException {
System.out.println(" 請輸入整數。 "); 接下頁程式
if 敘述
BufferedReader br =
new BufferedReader(new InputStreamR eader(System.in));
String str = br.readLine();
int res = Integer.parseInt(str);
if(res == 1)
System.out.println(" 輸入的是 1 。 ");
System.out.println(" 結束處理。 ");
} }
使用者從鍵盤輸入的值
,再指定給變數 res
如果輸入值等於 1 ,則此 處條件式結果為 true
於是就會進來執行 if 內部的敘述
接前頁程式
if 敘述內部有二行以的程式敘述句時
… 在 if 敘述中處理 2 行以上的的程式敘述句,必須在 i f 敘述的內部用 { } 將所有的程式敘述句框住。
if ( 條件式 ) { 程式敘述句 1 ; 程式敘述句 2 ; …
}
if 敘述內部有二行以的 程式敘述句時…
import java.io.*;
class Sample2 . .
.
if(res == 1){
System.out.println(" 輸入 1 。 ");
System.out.println(" 選擇 1 。 ");
}
System.out.println(" 結束處理。 ");
} }
屆時如果輸入 1 的話…條 件就會吻合(結果為 tru e )
會依序執行程式區塊 內的所有程式碼
if ~ else 敘述
使用 if ~ else 敘述時,條件式的結果不管是 true 還是 false ,都有各自不同的程式執行方向。內部的 程式區塊也可以撰寫多行程式碼
if ( 條件式 ) { 程式敘述 1 ; 程式敘述 2 ; ...
else
程式敘述 3 ; 程式敘述 4 ; ...
}
上述的條件式為 true 時
,會依序執行這個部份
上述的條件式為 false 時,會依序執行這個部份
if ~ else 敘述
判斷多個條件式 ─ if ~ else if ~ el se 敘述
if ( 條件式 1) {
程式敘述 1;
程式敘述 2
; … }
else if (
條件式 2) {
程式敘述 3;
程式敘述 4
; …
} else if (
條件式 3) { …
} else { … }
條件式 1 為 true 時,會 依序執行這個部份
條件式 1 為 false 並且條件式 2 為 true 時,會依序執行這個部份
當條件式 1 、 2 均為 false 並且 條件式 3 為 true 時,會執行這個 部份
上述所有條件式均為 false 時會 執行這個部份
if ~ else if ~ else 敘述
if ~ else if ~ else 敘 述可以一次處理多個 條件式
switch 敘述
switch ( 運算式 ) { case 值 1:
程式敘述 1 ; …
break ; case 值 2:
程式敘述 2 ; …
break ; …
default :
程式敘述 d ; …
break ; }
運算式計算後的值如果等 於值 1 會執行這一部份
運算式計算後的值如果等 於值 2 會執行這一部份
運算式計算後的值如果不等於 值 1 和值 2 則執行這一部份
switch 敘述
使用switch 敘述,也能夠一次處理多個 條件式
邏輯運算子
邏輯運算子的用意其實就是進行 2 個條件式的 true/f
alse 在運算。
條件運算子
如果只是簡單的條件判斷,除了有 if 敘述可以使用 之外,其他還有條件運算子( conditional operato r )的「 ?: 」指令可以使用
條件式 ? true 的時候為式子 1 : false 的時候為式
子 2
條件運算子
條件運算子會根據條件式當中設定的值
(此處是res==1 )判斷結果到底是 true 還是false ,再決定應該執行哪一個程式碼