gpt4 book ai didi

swift - Swift 字典中的可选 AnyObject 值

转载 作者:搜寻专家 更新时间:2023-10-31 08:19:57 24 4
gpt4 key购买 nike

当我添加“AnyObject?”类型的值时通过以下方式添加到类型为“[String : AnyObject]”的字典中,无法添加该值,这实际上是我所期望的。在我看来,将可选类型分配给非可选类型应该会失败。

var myDict : [String : AnyObject] = [ "Key1" : "Value1" as AnyObject? ]

但是,如果我先初始化一个空字典然后向其中添加值,为什么这个过程会起作用?

var myDict = [String : AnyObject]()
myDict["Key1"] = "Value1" as AnyObject?

我在 Apple 的 GenericKeychain 示例中看到了这种方法 https://developer.apple.com/library/content/samplecode/GenericKeychain/Introduction/Intro.html

最佳答案

您的第二行有效,因为字典的 subscript 覆盖使用了可选的:

subscript(key: Key) -> Value? { get set }

[String : AnyObject] 类型的 Dictionary 的初始化程序需要具体类型:

Dictionary init

关于swift - Swift 字典中的可选 AnyObject 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41334027/

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