我从Apple的开发者文档中获得了以下代码。
var testScores = ["Dave": [86, 82, 84], "Bev": [79, 94, 81]]
testScores["Bev"]?[0] += 1
它工作正常,但如果我按照以下方式执行,我收到编译错误。
testScores["Dave"]?[0] = testScores["Dave"]?[0] + 1
由于testScores["Dave"]?[0]
提供了一个可选的Int
(即Int?
),我希望代码在两种情况下都会触发错误。我错过了什么?
//为了响应 codeDifferent
而编辑如果我有两个课程,
class Country {
var capitalCity: City?
}
class City{
var name : String?
}
var country = Country()
country.capitalcity?.name =“somevalue”
即使capitalCity属性为nil,也是安全的。