1 回答

TA貢獻1906條經驗 獲得超10個贊
?
和 !
都是對一種類型 Optional
操作的語法糖.
官方解釋:
“ An optional value either contains a value or contains nil to indicate that a value is missing. Write a question mark (?) after the type of a value to mark the value as optional.”
大概意思是一個 Optional
類型, 可能有值, 也可能等于 nil
。你可以使用 ?
去詢問。
你也可以使用 !
去強制解包, 但當 Optional
沒有值時, 會 Crash。
一般來說你也可以這樣, 去更安(ma)全(fan)的解包
if let value = someOptional { /* 有值, 返回 true */
print("someOptional != nil")
} else {
print("someOptional == nil")
}
// 在 Swift 2.0 +, 可以使用 guard 關鍵字, 去更友好構造代碼結構
guard let value = someOptional else {
print("someOptional == nil")
return
}
print("someOptional value is \(value)")
具體建議參考: Swift 可選值(Optional Values)介紹
- 1 回答
- 0 關注
- 856 瀏覽
添加回答
舉報