【问题标题】:How do i extract key and value pair from an array of dictionaries?如何从字典数组中提取键值对?
【发布时间】:2020-07-19 05:42:09
【问题描述】:

如何从以下代码中提取字典数组中的键值对以显示字符串“Jane Doe (ID: 243) Earns $58000.0 (包括佣金)”。

let empIDKey = "EmpID"
    let nameKey = "Name"
    // TODO:  Add extra keys here
    let payKey = "PayRate"
    
    // Create employees
    var emp1 = Dictionary<String, Any>()
    emp1[empIDKey] = 137
    emp1[nameKey] = "John Doe"
    // TODO: add pay value here
    emp1[payKey] = 35000.00
    
    var emp2 = Dictionary<String, Any>()
    emp2[empIDKey] = 243
    emp2[nameKey] = "Jane Doe"
    // TODO: add pay and bonus values here
    emp2[payKey] = 50000.00
    // Add employees to a list
    
    var employees = [Dictionary<String, Any>]()
    employees.append(emp1)
    employees.append(emp2)
    // TODO:  Display employee info
    
    for person in employees {
        // Grab each key, value pair from the person dictionary
        // and print it
        for (key,value) in person {
            print("\(key): \(value)")
        }
    }

【问题讨论】:

    标签: ios arrays swift dictionary


    【解决方案1】:

    你必须通过它的键来获取每个值

    for person in employees {
        let id = person[empIDKey] as! Int
        let name = person[nameKey] as! String
        let pay = person[payKey] as! Double
        print("\(name) (ID: \(id) earns $\(pay) (including commission)")
    }
    

    考虑使用自定义结构来摆脱类型转换(和键)。

    【讨论】:

    • 循环执行两次,打印emp1emp2的值。
    猜你喜欢
    • 2013-06-09
    • 1970-01-01
    • 2019-10-04
    • 1970-01-01
    • 1970-01-01
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多