我正在尝试一些代码,这就是我想要的:我想从字典中打印密钥,但前提是这些密钥的值大于10.这是我的代码:
var alumnos = ["jose": 20, "leo": 56, "hadad": 8]
在这种情况下,只有" jose"和" leo"必须打印,因为它们的值超过10。
答案 0 :(得分:0)
你有没有试过这样的事情:
for (key, value) in alumnos {
if value > 10 {
print(key)
}
}
你也可以把它变成这样的函数:
func printKeyForValueGreaterThan10<T: Hashable>(dict: [T: Int]) {
for (key, value) in dict {
if value > 10 {
print(key)
}
}
}
通过传递你的字典来调用它。
printKeyForValueGreaterThan10(dict: alumnos)
答案 1 :(得分:0)
您可以使用更高级别的功能获取感兴趣的键:
let keysOfValuesAboveTen = alumnos.filter {$0.1 > 10}.map {$0.0}
您可以使用分隔符创建一个字符串,如下所示:
let str = alumnos.filter {$0.1 > 10}.map {$0.0}.joinWithSeparator(", ")
答案 2 :(得分:0)
这是解决此问题的最基本方法:
for (stringKey, intValue) in alumnos {
if intValue > 10 {
print(stringKey)
}
}