我对Xcode在《 Swift编程语言指南》中给我进行此实验的答案感到有些困惑:
// Use a for-in to iterate through a dictionary (experiment)
let interestingNumbers = [
"Prime": [2, 3, 5, 7, 11, 13],
"Fibonacci": [1, 1, 2, 3, 5, 8],
"Square": [1, 4, 9, 16, 25]
]
var largest = 0
for (kind, numbers) in interestingNumbers {
for number in numbers {
if number > largest {
largest = number
}
}
}
largest
我知道随着字典的使用,最大的数字被设置为变量largest
。但是,我对为什么Xcode会说要largest
根据每次测试设置5次或1次或3次设置感到困惑。
查看代码时,我发现应该单独在“ Prime”(2、3、5、7、11、13)中将其设置6次。然后,它应该跳过“斐波那契”中的任何数字,因为这些数字均小于最大数字,该数字当前已从“高级”设置为13。然后,应将其设置为16,最后在“ Square”中设置为25,总共产生8次。
我是否缺少一些显而易见的东西?