LoginSignup
0
0

【Swift】変数宣言時の型についている「!」と「?」の違い

Posted at

はじめに

先輩が書いたコードの中で、変数の型に「!」がついているものがあり「あれ?これってなんだっけ?」となったので備忘録としてメモします。

「!」がついた型の意味

var name:String!

「!」をつけて型を宣言した場合、nil が入るかもしれないが、取り出すときは nil ではない想定の変数となります。
そのため、アンラップが必要ありません。
しかし、変数にアクセスしたとき nil だった場合は例外がスローされるため注意が必要です。

「?」がついた型の意味

var name:String?

「?」をつけて型を宣言した場合、常に nil が入っていることを考慮しながら扱う必要がある変数となります。
そのため、if や guard などでアンラップする必要があります。

おわりに

まだまだ勉強中のため、間違っている箇所があればご指摘の程よろしくお願いいたします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0