課程
/后端開發(fā)
/Java
/Java入門第一季(IDEA工具)
switch()只能帶字符型嗎?如果存在匹配“快遞公司”與“圓通”,“申通”,“韻達”的匹配,豈不是能使用switch()?這個功能和條件語句有何差異和優(yōu)勢?
2017-02-28
源自:Java入門第一季(IDEA工具) 4-6
正在回答
switch只能用于整型變量和字符型變量,像你說的“快遞公司”“圓通”都不能使用switch語句,switch語句代碼較長,但是執(zhí)行效率比if要高
switch()后面可以帶字符型或者整數(shù)型,即char和int。對快遞公司的選擇完全可以使用switch()當(dāng)然使用if語句從結(jié)果上來說也是一樣的。但是用條件語句會有多次判斷。switch語句是檢驗判定值,然后選擇相對應(yīng)的語句執(zhí)行。而if語句是一個一個的執(zhí)行,直到執(zhí)行到符合判定結(jié)果的那一個if語句。也就是說用if語句的話,在編程的時候把可能性最高的、出現(xiàn)頻率最高、可能性最大的選項放在前面,可以提高程序的運行速度。
你是不是沒看仔細了,這是注意里面的幾點
不得不說的幾點小秘密:
1、?switch 后面小括號中表達式的值必須是整型或字符型
2、 case 后面的值可以是常量數(shù)值,如 1、2;也可以是一個常量表達式,如 2+2 ;但不能是變量或帶有變量的表達式,如 a * 2
3、 case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒有遇見?break?會繼續(xù)執(zhí)行下一個的 case 塊的內(nèi)容,直到遇到?break 語句或者 switch 語句塊結(jié)束?
沒有呀,整型也是可以的。跟IF相比,它能夠?qū)Ρ鹊臈l件更多些,也不顯得復(fù)雜
舉報
0基礎(chǔ)萌新入門第一課,從Java環(huán)境搭建、工具使用、基礎(chǔ)語法開始
1 回答switch只能判斷字符類型的值嗎?
1 回答switch表達式的值 整型或字符型
2 回答char變量類型中只能有一個字符嗎
1 回答string 字符竄類型,為什么不能用char字符型來定義hobby呢?
1 回答性別不應(yīng)該是字符型嗎?而且還是單字符
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-02-28
switch只能用于整型變量和字符型變量,像你說的“快遞公司”“圓通”都不能使用switch語句,switch語句代碼較長,但是執(zhí)行效率比if要高
2017-02-28
switch()后面可以帶字符型或者整數(shù)型,即char和int。對快遞公司的選擇完全可以使用switch()當(dāng)然使用if語句從結(jié)果上來說也是一樣的。但是用條件語句會有多次判斷。switch語句是檢驗判定值,然后選擇相對應(yīng)的語句執(zhí)行。而if語句是一個一個的執(zhí)行,直到執(zhí)行到符合判定結(jié)果的那一個if語句。也就是說用if語句的話,在編程的時候把可能性最高的、出現(xiàn)頻率最高、可能性最大的選項放在前面,可以提高程序的運行速度。
2017-02-28
你是不是沒看仔細了,這是注意里面的幾點
不得不說的幾點小秘密:
1、?switch 后面小括號中表達式的值必須是整型或字符型
2、 case 后面的值可以是常量數(shù)值,如 1、2;也可以是一個常量表達式,如 2+2 ;但不能是變量或帶有變量的表達式,如 a * 2
3、 case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒有遇見?break?會繼續(xù)執(zhí)行下一個的 case 塊的內(nèi)容,直到遇到?break 語句或者 switch 語句塊結(jié)束?
2017-02-28
沒有呀,整型也是可以的。跟IF相比,它能夠?qū)Ρ鹊臈l件更多些,也不顯得復(fù)雜