我正在尝试创建一个函数,如果他们在促销列表中,则会增加员工的工资

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (5)

我试图弄清楚如何通过测试字典键中数组值的相等性来编辑字典中的值

所以我几乎已经弄明白了,我试图用一个从函数返回的值替换字典中的值。

for (key, value) in employeeSal {

    for name in promotionList {

        if key == name {

            promotion(salary: value)

            print(key, promotion(salary: value))
            employeeSal[key: value]

        }   
    }
}

的,打印(键,促销(工资:值),表明我完全是我想要它我尝试到新的值赋给具有的关键。employeeSal [键:值],但它不工作,我出于想法。

提问于
用户回答回答于

将结果分配promotion给变量。的。用它来更新字典。

let newSalary = promotion(salary: value)
employeeSal[key] = newSalary

有一个更有效的解决方案:

for name in promotionList {
    if let value = employeeSal[name] {
        let newSalary = promotion(salary: value)
        employeeSal[name] = newSalary
    }
}
用户回答回答于

嘿你不应该做双循环:

for (key, value) in employeeSal {

       if (promotionList[key]) {

        let salary = promotion(salary: value)
        employeeSal[key] = salary

    }   
}

总是尝试使用上面的IF语句中的引用而不是double for循环,因为它们极其低效:

扫码关注云+社区

领取腾讯云代金券