在Swift中理解選項和驚嘆號
Swift是一種強類型語言,意味著所有變量都必須有一個定義的類型。
在Swift中,有一種特殊的類型叫做”Optional”,它只能有兩種可能的值:
- 一個未設定的值,意味著它從未被設定,或者有人明確地將它設定為未設定的狀態,即,設定為
nil
的值。 - 一個設置為特定東西的值。
例如:
var something = display.text
something
的類型是什麼?我們並未指定此變量的類型,但是Swift可以從上下文中推斷出來。它將something
設為和display.text
同樣的類型。假設display.text
的類型是String
;那麼something
將會是一個Optional String,即,它是一個可能包含String的Optional。
那麼您如何從Optional中提取一個字符串?您可以”解包”Optional,也就是說,您可以檢查它並取出相關的值,使用驚嘆號:
var something = display.text!
現在,something
的類型是String
,而不是Optional。請注意,如果display.text
的值是nil
,那麼您的程式將會崩潰!