つい今月、iPhoneアプリを作りたいと思い、Swifを学びはじめたプログラミング未経験者です。
本を読んだり、ググったりしているのですが、
わからない点がありましてご教授をいただきたいです!
今、配列と辞書の違いを勉強していまして
辞書は結果がオプショナルになる、そしてオプショナルを外さないとそのままの値では使えない、という所までは理解しました。
以下、コードを描いてみたのですが、アンラップをつけて値を取り出そうとするとエラーになってしまいます・・・
何故なのか、調べてもよく理解できず><
ご教授いただけると嬉しいです!
よろしくお願いいたします!!
//辞書
var cameraLens: [String: Int] = ["key1": 24, "key2": 50, "key3": 85,]
cameraLens["key1"] = 2470 //辞書の値を更新
cameraLens["key4"] = 135 //辞書に追加
print(cameraLens["key1"])
print(cameraLens["key5"]) //key5は無いからnilになる
let key2: Int? = cameraLens["key2"] // ?をつけてオプショナル型を指定している。オプショナルが外れる
print(cameraLens)
// ↓エラーになっちゃうその1
if cameraLens["key1"] != nil { // if文の中で(!)アンラップをつけてnilでないことをチェックしている
print(cameraLens["key1"]
}
// ↓エラーになっちゃうその2
else if cameraLens["key4"] != nil { //アンラップをつけてオプショナルでない値を取り出す
let key4: String = cameraLens["key3"]! //アンラップを最後につける
print(key4)
}