用語の種類
言語仕様制御構文
大分類
言語仕様
最終更新日
2024/01/10 11:48
参考文献
DOWNLOAD
ゆめみ iOS 研修との関連
補足や訂正
学習の難易度
学習の重要度
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
}