【发布时间】:2017-11-15 07:32:24
【问题描述】:
我目前正在学习 swift 4 中的类型转换和检查的基础知识。我在 Apple Developer book 中找到了一个示例,我需要一些帮助。
他们有一个练习来创建一个 Any 类型的字典,然后解开遍历字典的值。给定的解决方案显示了 for 循环,括号中的值和每个值都被解包。有人可以解释所显示的解决方案吗?还有另一种(简单的)方法可以解决这个问题吗?书上的资料不够多。
let anythingAndEverything: [String: Any] = ["FirstBool": true,
"FalseBool": false, "Unknown": "90", "AnInteger": 12, "ADouble": 1.1]
print(anythingAndEverything)
var total: Double = 0
for (_, value) in anythingAndEverything {
if let value = value as? Bool {
if value {
total += 2
} else {
total -= 3
}
} else if let value = value as? Double {
total += value
} else if let value = value as? Int {
total += Double(value)
} else if let value = value as? String {
total += 1
}
}
print(total)
非常感谢您提前提供的任何帮助 :-)
【问题讨论】: