這篇文章將為大家詳細講解有關Java中選擇結構的用法示例,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
專注于為中小企業(yè)提供網(wǎng)站建設、成都做網(wǎng)站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)安福免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
文本關鍵字:基本結構、選擇結構、if、else、switch、case
使用if-else選擇結構時,一個最基本的原則就是一定會有一個判斷條件,并且如果出現(xiàn)else一定會有一個與之對應的if。
代碼格式:if(判斷條件){}else{}
判斷條件部分可以直接使用布爾值:true/false
如果使用表達式作為判斷條件則必須要保證最終的計算結果為布爾類型
對于switch-case結構,整體的結構與if-else不同,雖然也是進行判斷,但是switch-case是指定一個變量或表達式作為需要比對的值,通過case來羅列與之匹配的值,并寫出該情況下需要執(zhí)行的代碼。
代碼格式:switch(變量或表達式){case 匹配值:代碼片段;default:代碼片段;}
變量或表達式結果的類型只能為:整數(shù)類型(byte、short、int),字符串String,字符char,枚舉enum
case本身具有穿透的特點,會從一個匹配的case進入執(zhí)行,直到遇到break;為止
default關鍵字可以不出現(xiàn),如果出現(xiàn)只能出現(xiàn)在最后的位置,在所有case都沒有匹配時執(zhí)行(如果離default最近的一個case沒有使用break,則也可能會被執(zhí)行)
單if結構是最簡單的選擇結構,表達的含義是:符合條件時,執(zhí)行部分代碼,不符合條件時,什么都不做,繼續(xù)執(zhí)行選擇結構之后的代碼。需要注意的是,if用小括號裝一個條件,默認只能控制一條語句,如果需要控制多條語句需要使用大括號。
public static void main(Stirng[] args){ // 假如有如下場景:你每天回家都要匯報你的考試成績和完成家庭作業(yè) // 如果你考的不錯(90分以上),那么就會得到一次夸獎 // 如果考的不怎么樣,就什么都不會發(fā)生 // 而且,不管考的怎么樣,作業(yè)都是要完成的,就是如此的悲催 int score = 92; if(score >= 90){ // 為了避免不必要的麻煩,即使是一行代碼我們也加上大括號,這招挺管用的! System.out.println("考的不錯!"); } System.out.println("開始寫作業(yè)"); }
if-else結構是最基本的選擇結構,明確一個判斷條件后,指定條件成立時做什么,條件不成立時做什么。
public static void main(Stirng[] args){ // 假如有如下場景:根據(jù)不同的年級進入不同的活動教室 // 3年級及以下的學生進入活動室一 // 其他年級學生進入活動教室二 int grade = 2; if(grade <= 3){ // 為了避免不必要的麻煩,即使是一行代碼我們也加上大括號,這招挺管用的! System.out.println("進入活動教室一"); }else{ System.out.println("進入活動教室二"); } }
如果我們需要具體判斷的條件很多,那么我們就需要使用到多個if。需要注意的是,我們可以在一段程序中使用多個并列的if-else結構,但是這和if-eles if-else的結構并不等效,請看流程圖。
并列的if-else結構,每個if后面都可以引導判斷條件,但是相互之間相對獨立,無關聯(lián)。
// 偽代碼如下: public static void main(Stirng[] args){ if(條件){ // 程序代碼 }else{ // 程序代碼 } if(條件){ // 程序代碼 }else{ // 程序代碼 } }
對于if-else if-else結構,如果一個if中的條件為真,則其他的判斷分支將不會執(zhí)行,即使判斷結果為真!
// 偽代碼如下: public static void main(Stirng[] args){ if(條件){ // 程序代碼 }else if(條件){ // 程序代碼 }else{ // 程序代碼 } }
掌握了基本條件判斷結構后,對于復雜問題可能需要使用到嵌套結構。比如某一個問題需要分兩種或多種情況討論,而這幾種情況又需要進一步分多種情況討論。
// 偽代碼如下: public static void main(Stirng[] args){ if(條件){ // 程序代碼 if(條件){ // 程序代碼 }else{ // 程序代碼 } }else{ // 程序代碼 } }
switch-case結構也是選擇結構的一種,主要使用在選擇條件較多,并且主要是等值判斷時。如果我們需要使用switch-case結構進行某一個范圍的判斷,那就需要下一點功夫來進行轉(zhuǎn)換。
在這種情況下會按次序進行判斷執(zhí)行匹配到的case后面的代碼,執(zhí)行完畢后直接結束switch-case結構,當所有的case都沒有匹配時,會執(zhí)行default相關的代碼。
public static void main(Stirng[] args){ String sex = "女"; switch(sex){ case "男": System.out.println("男生"); break; case "女": System.out.println("女生"); break; default: System.out.println("怕是變異了?"); } }
當case對應的值被匹配到后,對應的代碼會被執(zhí)行,由于沒有break,將會繼續(xù)執(zhí)行下一個case對應的代碼(包括default),直到整個switch-case都結束或遇到一個break為止。
public static void main(Stirng[] args){ // 有的時候我們剛好可以利用一下穿透的特點,來進行區(qū)間的判斷 // 下面是一個經(jīng)典案例:根據(jù)分數(shù)進行分檔 // 90-100:A,80-89:B,70-79:C,60-69:D,0-59:不及格,其他:錯誤的分數(shù) int score = 75; // switch的括號中可以使用表達式,只要計算結果的類型滿足要求即可 // 對分數(shù)進行區(qū)間的劃分,相當于變向的范圍判斷 switch(score / 10){ case 10: // 此處什么都不填寫,匹配到之后自動去執(zhí)行case9對應的代碼 // 但是case10不能省略,否則會丟失100分時的情況 case 9: System.out.println("A"); break; case 8: System.out.println("B"); break; case 7: System.out.println("C"); break; case 6: System.out.println("D"); break; case 5: case 4: case 3: case 2: case 1: case 0: // 繼續(xù)使用穿透的特點,表示0-59分時的情況 System.out.println("不及格"); break; default: // 當分數(shù)為負數(shù)或大于100分時執(zhí)行這部分的代碼 System.out.println("成績錄入有誤"); } }
關于“Java中選擇結構的用法示例”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
文章題目:Java中選擇結構的用法示例
URL網(wǎng)址:http://chinadenli.net/article42/jpdohc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司、網(wǎng)站排名、微信公眾號、虛擬主機、電子商務、外貿(mào)網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)