确定 Swift 字典是否包含键并获取其任何值

2024-04-03

我目前正在使用以下(笨拙的)代码片段来确定(非空)Swift 字典是否包含给定的键,并从同一字典中获取一个(任何)值。

如何在 Swift 中更优雅地实现这一点?

// excerpt from method that determines if dict contains key
if let _ = dict[key] {
    return true
}
else {
    return false
}

// excerpt from method that obtains first value from dict
for (_, value) in dict {
    return value
}

你不需要any执行此操作的特殊代码,因为这是字典已经执行的操作。当你取的时候dict[key] you know字典是否包含该键,因为返回的Optional不是nil(并且它包含该值)。

所以,如果你just要回答字典是否包含该键的问题,请询问:

let keyExists = dict[key] != nil

如果你想要价值并且你know字典包含键,例如:

let val = dict[key]!

但是,如果像通常发生的那样,您不知道它包含密钥 - 您想获取它并使用它,但前提是它存在 - 那么使用类似if let:

if let val = dict[key] {
    // now val is not nil and the Optional has been unwrapped, so use it
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

确定 Swift 字典是否包含键并获取其任何值 的相关文章

随机推荐