2
是什麼A線和B線之間的區別:空的情況下,在斯威夫特
let a = 1
switch a {
case 1:
break;//line A
case 2:
print("2")
default:
()//line B
}
我的猜測是,break
是說離開switch
,而()
是說什麼也不做。
我不知道該怎麼尋找這一點,我是新來的斯威夫特,所以鏈接讚賞
是什麼A線和B線之間的區別:空的情況下,在斯威夫特
let a = 1
switch a {
case 1:
break;//line A
case 2:
print("2")
default:
()//line B
}
我的猜測是,break
是說離開switch
,而()
是說什麼也不做。
我不知道該怎麼尋找這一點,我是新來的斯威夫特,所以鏈接讚賞
在你的榜樣,沒有任何區別。他們都是佔位符。規則是一個案件不能完全是空的。兩者都是滿足這一要求的方式。
他們是否編譯到完全相同的東西? – nhgrif
@nhgrif猜測 - 在我的例子中他們可能,但經過一些測試後,似乎你可以在'()'後面有語句,但不是在'break'後面(所以有些情況下它們肯定不會編譯成相同的東西) –
爲了澄清,我並不是說在語法或語義上'()'和'break'意味着類似的東西。但它們在OP給出的例子中以相同的方式起作用。它們只是解決案件不能爲空的一種方式。 – matt