Swift switch 語句
switch 語句允許測(cè)試一個(gè)變量等于多個(gè)值時(shí)的情況。 Swift 語言中只要匹配到 case 語句,則整個(gè) switch 語句執(zhí)行完成。
語法
Swift 語言中 switch 語句的語法:
switch expression { case expression1 : statement(s) fallthrough /* 可選 */ case expression2, expression3 : statement(s) fallthrough /* 可選 */ default : /* 可選 */ statement(s); }
一般在 switch 語句中不使用 fallthrough 語句。
這里我們需要注意 case 語句中如果沒有使用 fallthrough 語句,則在執(zhí)行當(dāng)前的 case 語句后,switch 會(huì)終止,控制流將跳轉(zhuǎn)到 switch 語句后的下一行。
如果使用了fallthrough 語句,則會(huì)繼續(xù)執(zhí)行之后的 case 或 default 語句,不論條件是否滿足都會(huì)執(zhí)行。
注意:在大多數(shù)語言中,switch 語句塊中,case 要緊跟 break,否則 case 之后的語句會(huì)順序運(yùn)行,而在 Swift 語言中,默認(rèn)是不會(huì)執(zhí)行下去的,switch 也會(huì)終止。如果你想在 Swift 中讓 case 之后的語句會(huì)按順序繼續(xù)運(yùn)行,則需要使用 fallthrough 語句。
實(shí)例1
以下實(shí)例沒有使用 fallthrough 語句:
import Cocoa var index = 10 switch index { case 100 : print( "index 的值為 100") case 10,15 : print( "index 的值為 10 或 15") case 5 : print( "index 的值為 5") default : print( "默認(rèn) case") }
當(dāng)上面的代碼被編譯執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:
index 的值為 10 或 15
實(shí)例2
以下實(shí)例使用 fallthrough 語句:
import Cocoa var index = 10 switch index { case 100 : print( "index 的值為 100") fallthrough case 10,15 : print( "index 的值為 10 或 15") fallthrough case 5 : print( "index 的值為 5") default : print( "默認(rèn) case") }
當(dāng)上面的代碼被編譯執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:
index 的值為 10 或 15 index 的值為 5
更多建議: