Java流程控制語句之If選擇結(jié)構(gòu)
一、選擇結(jié)構(gòu)大綱
- if單選擇結(jié)構(gòu)
- if雙選擇結(jié)構(gòu)
- if多選擇結(jié)構(gòu)
- 嵌套的if結(jié)構(gòu)
- switch多選擇結(jié)構(gòu)
二、if單選擇結(jié)構(gòu)
我們很多時候需要去判斷一個東西是否可行,然后我們才去執(zhí)行,這樣一個過程在程序中用if語句來表示
語法:
if(布爾表達式) {
//如果布爾表達式為true將執(zhí)行的語句
}
三、if雙選擇結(jié)構(gòu)
那現(xiàn)在有個需求,公司要收購一個軟件,成功了,給人支付100萬元,失敗了,自己找人開發(fā)。這樣的需求用一個if就搞不定了,我們需要有兩個判斷,需要一個雙選擇結(jié)構(gòu),所以就有了if-else結(jié)構(gòu)
語法:
if(布爾表達式) {
//如果布爾表達式的值為true
} else {
//如果布爾表達式的值為false
}
四、if多選擇結(jié)構(gòu)
我們發(fā)現(xiàn)剛才的代碼不符合實際情況,真實的情況還可能存在ABCD,存在區(qū)間多級判斷。比如我們90-100就是A,80-90就是B…等等,在生活中我們很多時候的選擇也不僅僅只有兩個,所以我們需要一個多選擇結(jié)構(gòu)來處理這類問題!
語法:
if(布爾表達式1) {
//如果布爾表達式1的值為true執(zhí)行代碼
} else if (布爾表達式2) {
//如果布爾表達式2的值為true執(zhí)行代碼
}else if(布爾表達式3) {
//如果布爾表達式3的值為true執(zhí)行代碼
}else{
//如果以上布爾表達式都不為true執(zhí)行代碼
}
五、嵌套的if結(jié)構(gòu)
使用嵌套的if…else語句是合法的。也就是說你可以在另一個if或者else if語句中使用if或者else if語句。你可以像if語句一樣嵌套else if…else
語法:
if(布爾表達式1) {
//如果布爾表達式1的值為true執(zhí)行代碼
if(布爾表達式2) {
//如果布爾表達式2的值為true執(zhí)行代碼
}
}
思考?我們需要尋找一個數(shù),在1-100之間
算法思想(大數(shù)據(jù)時代,提高算法效率)
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("請輸入內(nèi)容:"); 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) { //考試分?jǐn)?shù)大于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) { //考試分?jǐn)?shù)大于60就是及格,小于60分就是不及格 Scanner scanner = new Scanner(System.in); /** * if語句至多有一個else語句,else語句在所有的else if語句之后。 * if語句可以有若干個else if語句,他們必須在else語句之前 * 一旦其中一個else if語句檢測為true,其他的else if語句以及else語句都將跳過執(zhí)行 */ 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(); } }
到此這篇關(guān)于Java流程控制語句之If選擇結(jié)構(gòu)的文章就介紹到這了,更多相關(guān)If選擇結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot設(shè)置文件上傳大小限制的實現(xiàn)示例
Spring Boot工程嵌入的tomcat限制了請求的文件大小默認(rèn)為1MB,單次請求的文件的總數(shù)不能大于10Mb,本文主要介紹了Springboot設(shè)置文件上傳大小限制的實現(xiàn)示例,感興趣的可以了解一下2023-11-11詳解基于JWT的springboot權(quán)限驗證技術(shù)實現(xiàn)
這篇文章主要介紹了詳解基于JWT的springboot權(quán)限驗證技術(shù)實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11導(dǎo)入renren-fast出現(xiàn)問題以及解決方案
文章介紹了在導(dǎo)入renren-fast項目時遇到的maven繼承parent問題,并提供了解決方案,即在pom文件中添加``標(biāo)簽,此外,還詳細解釋了Maven的``標(biāo)簽的作用以及MAVEN構(gòu)建jar包時的查找順序2024-11-11Java中replace、replaceAll和replaceFirst函數(shù)的用法小結(jié)
相信會java的同學(xué)估計都用過replace、replaceAll、replaceFirst這三個函數(shù),可是,我們真的懂他們嗎?下面通過這篇文章大家再來好好學(xué)習(xí)學(xué)習(xí)下這幾個函數(shù)。2016-09-09java編程創(chuàng)建型設(shè)計模式工廠方法模式示例詳解
這篇文章主要為大家介紹了java編程創(chuàng)建型設(shè)計模式之工廠方法模式的創(chuàng)建及案例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02