作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我之前问过类似的问题,但答案似乎不起作用。
我有一本名为“设置”的字典:
var 设置 = 字符串:任何
这是通过读取文本文件填充的 - 一切正常
当我运行 println(settings)
时,它会返回填充的字典。
[monsterRate: 1.0, monsterMinSpeed: 10.0, weaponPickupRate: 10.0, weaponPickupAmount: 50.0, goldPerMonster: 10.0, totalMonsters: 10.0, LevelNum: 1.0, monsterMaxSpeed: 15.0]
如果我运行 println(settings["monsterMinSpeed"])
它返回 Optional("10.0")
但是,当我尝试将我的变量设置为字典中的值时,它不起作用:
monsterMinSpeed = (settings["monsterMinSpeed"] as? Double) ?? 0.0
monsterMaxSpeed = (settings["monsterMaxSpeed"] as? Double) ?? 0.0
monsterRate = (settings["monsterRate"] as? Double) ?? 0.0
weaponPickupAmount = (settings["weaponPickupAmount"] as? Double) ?? 0.0
weaponPickupKills = (settings["weaponPickupKills"] as? Double) ?? 0.0
goldPerMonster = (settings["goldPerMonster"] as? Double) ?? 0.0
即使字典中有值,它总是使用 0.0,就好像我提供的键不存在一样 - 返回 nil,因此将变量设置为 0.0
有人可以帮忙吗?
最佳答案
那些以字符串形式出现,而不是数字 - 尝试类似的东西:
monsterMinSpeed = (settings["monsterMinSpeed"] as? NSString)?.doubleValue ?? 0.0
关于ios - 从字典中解包可选类型 Any,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28443126/
我是一名优秀的程序员,十分优秀!