Java--流程控制之判斷語句
阿新 • • 發佈:2018-12-14
前言
在一個程式執行的過程中,各條語句的執行順序對程式的結果是有直接影響的。所以,我們必須清楚每條語句的執行流程。而且,很多時候我們要通過控制語句的執行順序來實現我們要完成的功能。
內容
1. 順序結構
所謂順序結構,就是按照一般我們思維所想的順序,從上到下,從左到右之類的執行.
public static void main(String[] args){
//順序執行,根據編寫的順序,從上到下執行
System.out.println(1);
System.out.println(2);
System.out.println(3);
}
2. 判斷語句
2.1 if – 判斷語句
語句格式:
if(關係表示式) {
語句體;
}
執行流程:
- 首先判斷關係表示式看其結果是true還是false
- 如果是true就執行語句體
- 如果是false就不執行語句體 程式碼展示:
public static void main(String[] args) {
System.out.println("開始");
// 定義兩個變數
int a = 10;
int b = 20;
// 變數使用if判斷
if (a == b) {
System.out.println("a等於b");
}
int c = 10;
if(a == c) {
System.out.println("a等於c");
}
System.out.println("結束");
}
2.2 if-else --判斷語句
語句格式:
if(關係表示式) {
語句體1;
} else {
語句體2;
}
執行流程:
- 首先判斷關係表示式看其結果是true還是false
- 如果是true就執行語句體1
- 如果是false就執行語句體2 程式碼展示:
public static void main(String[] args){
// 判斷給定的資料是奇數還是偶數
// 定義變數
int a = 1;
if(a % 2 == 0) {
System.out.println("a是偶數");
} else{
System.out.println("a是奇數");
}
System.out.println("結束");
}
2.3 if-else if-else --判斷語句
語句格式:
if (關係表示式1) {
執行語句1;
} else if (關係表示式2) {
執行語句2;
}
...
} else if (關係表示式n) {
執行語句n;
} else {
執行語句n+1;
}
執行流程:
- 首先判斷關係表示式1看其結果是true還是false
- 如果是true就執行語句體1
- 如果是false就繼續判斷關係表示式2看其結果是true還是false
- 如果是true就執行語句體2
- 如果是false就繼續判斷關係表示式…看其結果是true還是false …
- 如果沒有任何關係表示式為true,就執行語句體n+1。 程式碼展示:
public static void main(String[] args) {
System.out.println("開始");
// x和y的關係滿足如下:
// x>=3 y = 2x + 1;
//‐1<=x<3 y = 2x;
// x<=‐1 y = 2x ‐ 1;
// 根據給定的x的值,計算出y的值並輸出。
int x = ‐1;
int y = 0;
if (x >= 3) {
y = 2*x + 1;
} else if (‐1 <= x && x < 3) {
y = 2*x;
} else if (x <= ‐1) {
y = 2*x ‐ 1;
}
System.out.println("y = " + y);
System.out.println("結束");
}
3. 舉個例子
3.1 if-else if-else --判斷語句 例子展示
- 指定考試成績,判斷學生等級
- 90-100 優秀
- 80-89 好
- 70-79 良
- 60-69 及格
- 60以下 不及格
public static void main(String[] args) {
// 1.定義一個分數
int score = 22;
// 判斷成績屬於哪個範圍
if (score >= 90 && score <= 100) {
System.out.println("優秀");
} else if (score >= 80 && score <= 90) {
System.out.println("好");
} else if (score >= 70 && score <= 79) {
System.out.println("良");
} else if (score >= 60 && score <= 69) {
System.out.println("及格");
} else if (score >= 0 && score <= 59) {
System.out.println("不及格");
} else {
System.out.println("成績非法");
}
}
3.2 if 語句和三元運算子的互換 例子展示
在某些簡單的應用中,if…else語句是可以和三元運算子互換使用的。例如獲取2個數的最大值
public static void main(String[] args) {
int a = 10;
int b = 20;
//定義變數,儲存a和b的較大值
int c;
if(a > b) {
c = a;
} else {
c = b;
}
//可以上述功能改寫為三元運算子形式
c = a > b ? a:b;
}
總結
Java中的判斷語句差不多就這三種,結合多種方法及運算子能出現不一樣的奇蹟,希望對大家有用!
end
謝謝您的閱讀!