2016-03-25 163 views
2

我喜歡這種語法在Objective-C:如何使用?:在Swift中?

NSString const name = [self getName] ?: @"backup"; 

,我想用在斯威夫特一樣,但是我得到這個當我嘗試:

<code>let name = getName() ?: "backup";</code> results in errors where the compiler completely doesn't recognize the syntax

有什麼辦法在Swift中做到這一點?如果不是,我可以編寫一個自定義infox操作符來執行它嗎?

+1

哦,這就是所謂的「空合併」?謝謝!這對谷歌搜索很有幫助。 –

+1

Swift被命名爲「零合併運算符」。 :) https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/BasicOperators.html#//apple_ref/doc/uid/TP40014097-CH6-ID72 – Moritz

回答

2

它被稱爲空(或無)合併運算,和雨燕語法是:

let name = getName() ?? "backup"; 
相關問題