技術ブログ

プログラミング、IT関連の記事中心

オプショナル型の「?」「!」の違い【Swift】

◾️オプショナル型の「?」「!」の違い

オプショナル型の宣言で、型の後ろに「?」「!」が付いているが、この違いは以下である。
「?」:nilを代入する事を許す。(オプショナル型)
「!」:nilを代入する事を許し、変数を使用する時に強制的アンラップする。(暗黙的アンラップ型)

暗黙的アンラップ型の「!」は強制的アンラップとは別物である。
暗黙的アンラップ型は、使用するとき必ず強制的アンラップをする為、以下の様に使用する事ができる。

(記載ルール)

let 定数名: 型! = 値
print(定数名)

(例)

var str: String! = "オプショナル型"
print(str)