如何在此Swift for-in示例中打印两个键值对

时间:2014-06-05 05:52:09

标签: swift

此示例来自Apple的“A Swift Guide”部分,演示for-in。

超级新手问题,但为什么不打印type变量呢?是否与范围有关?

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
var type: String
for (kind, numbers) in interestingNumbers {
    for number in numbers {
        if number > largest {
            largest = number
            type = kind
        }
    }
}
largest
type

3 个答案:

答案 0 :(得分:1)

首先将type初始化为空字符串,如下所示:

var type: String = ""

答案 1 :(得分:0)

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
var type : String = ""


for (kind , numbers) in interestingNumbers {
    for num in numbers{
        if num>largest{
            largest=num
            type=kind
        }
    }
} 
println(largest,type)

答案 2 :(得分:0)

 var items: [(String, String)] = [
        ("Working life balance", "work_life_balance_icon.png"),
        ("Cutting Down on Alcohol", "cutting_down_alcohol_icon.png"),
        ("Smoking Cessation","smoking_cessation_icon.png"),
        ("Eating a healthy diet","eating_healthy_diet_icon.png"),
        ("Exercise", "exercise_icon.png"),
        ("Loosing Weight","loosing_weight_icon"),
        ("Heart Disease Risk Tracker", "qrisk.png"),
        ("BMI Tracker", "bmi.png")
    ]

println("value \(items[0])")