Java流程控制語句之If選擇結構
一、選擇結構大綱
- if單選擇結構
- if雙選擇結構
- if多選擇結構
- 嵌套的if結構
- switch多選擇結構
二、if單選擇結構
我們很多時候需要去判斷一個東西是否可行,然後我們才去執行,這樣一個過程在程序中用if語句來表示
語法:
if(佈爾表達式) {
//如果佈爾表達式為true將執行的語句
}
三、if雙選擇結構
那現在有個需求,公司要收購一個軟件,成功瞭,給人支付100萬元,失敗瞭,自己找人開發。這樣的需求用一個if就搞不定瞭,我們需要有兩個判斷,需要一個雙選擇結構,所以就有瞭if-else結構
語法:
if(佈爾表達式) {
//如果佈爾表達式的值為true
} else {
//如果佈爾表達式的值為false
}
四、if多選擇結構
我們發現剛才的代碼不符合實際情況,真實的情況還可能存在ABCD,存在區間多級判斷。比如我們90-100就是A,80-90就是B…等等,在生活中我們很多時候的選擇也不僅僅隻有兩個,所以我們需要一個多選擇結構來處理這類問題!
語法:
if(佈爾表達式1) {
//如果佈爾表達式1的值為true執行代碼
} else if (佈爾表達式2) {
//如果佈爾表達式2的值為true執行代碼
}else if(佈爾表達式3) {
//如果佈爾表達式3的值為true執行代碼
}else{
//如果以上佈爾表達式都不為true執行代碼
}
五、嵌套的if結構
使用嵌套的if…else語句是合法的。也就是說你可以在另一個if或者else if語句中使用if或者else if語句。你可以像if語句一樣嵌套else if…else
語法:
if(佈爾表達式1) {
//如果佈爾表達式1的值為true執行代碼
if(佈爾表達式2) {
//如果佈爾表達式2的值為true執行代碼
}
}
思考?我們需要尋找一個數,在1-100之間
算法思想(大數據時代,提高算法效率)
1-100之間,不用算法,如果查詢的剛好是100,要查詢100次
如果用二分法思想,可以提高一倍效率(先從1-50查,查不到,再從50-100查)
六、代碼show
demo01:
public class IfDemo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("請輸入內容:"); String s = scanner.nextLine(); //equals:判斷字符串是否相等 if (s.equals("hello")) { System.out.println(s); } System.out.println("End"); scanner.close(); } }
demo02:
public class IfDemo02 { public static void main(String[] args) { //考試分數大於60就是及格,小於60分就是不及格 Scanner scanner = new Scanner(System.in); System.out.println("請輸入成績:"); int score = scanner.nextInt(); if (score > 60) { System.out.println("及格"); } else { System.out.println("不及格"); } scanner.close(); } }
demo03:
public class IfDemo03 { public static void main(String[] args) { //考試分數大於60就是及格,小於60分就是不及格 Scanner scanner = new Scanner(System.in); /** * if語句至多有一個else語句,else語句在所有的else if語句之後。 * if語句可以有若幹個else if語句,他們必須在else語句之前 * 一旦其中一個else if語句檢測為true,其他的else if語句以及else語句都將跳過執行 */ System.out.println("請輸入成績:"); int score = scanner.nextInt(); if (score == 100) { System.out.println("恭喜滿分"); } else if (score < 100 && score >= 90) { System.out.println("A級"); } else if (score < 90 && score >= 80) { System.out.println("B級"); } else if (score < 80 && score >= 70) { System.out.println("C級"); } else if (score < 70 && score >= 60) { System.out.println("D級"); } else if (score < 60 && score >= 0) { System.out.println("不及格"); } else { System.out.println("成績不合法"); } scanner.close(); } }
到此這篇關於Java流程控制語句之If選擇結構的文章就介紹到這瞭,更多相關If選擇結構內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 新手初學Java流程控制
- Java Scanner的使用和hasNextXXX()的用法說明
- java編程學習輸入輸出詳解看完快速上手
- Java控制臺輸入scanner的方法及代碼詳解
- Java中的常用輸入輸出語句的操作代碼