gpt4 book ai didi

swift - 如何将 'nil' 设置为 [String : String] dictionary is valid? 的值

转载 作者:搜寻专家 更新时间:2023-10-30 23:04:27 25 4
gpt4 key购买 nike

我很好奇为什么这段代码在 Playground 中能正常工作:

var dict = [String: String]()
dict["key"] = nil
let value = dict["key"]

我们可以看到我用非可选值声明了 Dictionary,在 Playground 中检查它之后它的工作方式类似于声明为 [String: String?]

的字典

我的问题是在声明为 [String: String][String: String?] ?

最佳答案

dict["key"] = nil 是从字典中删除键的简写(与使用 dict.removeValue(forKey: "key") 相同) .如果 “key” 键下有一个值,则在此行之后,整个条目将从字典中删除(包括键和值)。

阅读下标docs了解更多:

If you assign nil as the value for the given key, the dictionary removes that key and its associated value.

In the following example, the key-value pair for the key "Aquamarine" is removed from the dictionary by assigning nil to the key-based subscript.

hues["Aquamarine"] = nil
print(hues)
// Prints "["Coral": 18, "Heliotrope": 296, "Cerise": 330]"

let value = dict["key"] 获取键的值,根据定义返回 nil 如果没有给定键的条目(这是在你的情况下)。

根据 docs ,下标返回值,如果键不在字典中,则返回 nil:

The value associated with key if key is in the dictionary; otherwise, nil.

关于swift - 如何将 'nil' 设置为 [String : String] dictionary is valid? 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49772279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com