Get Notion free

オプショナル・チェイニング (Optional Chaining)

言語仕様
制御構文
言語仕様
2024/01/10 11:48
Empty
Empty
Empty
Empty
Empty
Empty
8 more properties
Optional にアクセスする時に
?.
記法で
nil
なら実行せず、そうでなければ実行することが簡潔に表現できます。
以下のようなクラス定義があった場合(詳細ドキュメントと同じ例です)
class Person { var residence: Residence? } class Residence { var numberOfRooms = 1 } let john = Person()
Optional Chaining では以下のように表現可能です。
let roomCount = john.residence?.numberOfRooms
これは以下と等価です。比較すると Optional Chaining で簡潔に表現できていると実感できると思います。
let roomCount: Int? if let residence = john.residence { roomCount = residence.numberOfRooms } else { roomCount = nil }