mzgkworks

iOSを中心にプログラミング関係について書く

【Swift】if let文(アンラップ後の変数名はラップ変数と同じ名前にする)

黒帯本iOS開発の基礎を学び直す。
P.58 Chapter 2-02

if let文

  • optional型の変数を使用する場合の、判定時に使用するif文

if let文で使うアンラップ変数名

後で使わない

  • アンラップ後の変数を使用しない場合には、「_(アンダーバー)」で省略が可能
var value: String?
value = "こんにちわ"
if let _ = value {
    print("valueはnilではない")
}

後で使う

  • 同じ変数名を使う
  • if let文内でアンラップ前の変数が使えるため不具合発生の確率がある
  • 同じ名前にした場合、if let文中ではアンラップ後の変数が優先的に使用されるため
var value: String?
value = "こんにちわ"
if let value = value {
    print(value)    // アンラップ後のvalueが使われる
}