我知道這是可能做到這一點,像這樣:只有在一個表達式中的可選項不爲零時才調用函數?
let intValue: Int? = rawValue == nil ? Int(rawValue) : nil
甚至是這樣的:
var intValue: Int?
if let unwrappedRawValue = rawValue {
intValue = Int(unwrappedRawValue)
}
但是我正在尋找,以找出是否有辦法在一個表達式做到這一點,像這樣:
let intValue: Int? = Int(rawValue) // Where Int() is called only if rawValue is not nil
? – Korpel
如果'rawValue'不是零,我想'intValue'是'Int(rawValue)',否則如果'rawValue'是零我希望'intValue'是零。 –
如果您確定它不是零但是您的兩種方式可以完成他們的工作,您可以明確地解開它。請問你到底在做什麼?或者這是一個通用的問題? – Korpel