はてなマーク2つの意味を説明する。
結論
nilガード的な意図で使われる。例えば以下の場合は
- 変数2の値がnilではない場合は、変数2の値が変数1に代入される。
- 変数2の値がnilの場合は、値1が変数1に代入される。
let 変数1 = 変数2 ?? 値1
具体例
- ユーザー1はnilではないで、なまえ1は”ひろゆき”となる。
- ユーザー2はnilなので、なまえ2は??の後の”名無し”となる。
import SwiftUI
struct ContentView: View {
var body: some View {
let ユーザー1: String? = "ひろゆき"
let なまえ1 = ユーザー1 ?? "名無し"
Text(なまえ1)
let ユーザー2: String? = nil
let なまえ2 = ユーザー2 ?? "名無し"
Text(なまえ2)
}
}
まとめ
SwiftUIのはてなマーク2つの意味を説明した。
コメント