gpt4 book ai didi

ios - 尝试访问字典中 AnyObject 数组的成员时出错 - 有没有办法解包?

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

我有一个字典设置为:

var jDict = Dictionary<String, AnyObject[]>()

数组是自定义按钮 (JunkBut​​ton) 或标签 (JunkLabels) 的集合。

我在尝试访问字典中包含的数组成员时遇到问题,如下所示:

let thisArray = jDict[key]
var aButton = thisArray[0] //Gives error: 'AnyObject[]? does not have a member named 'subscript'

我可以通过向下转换整个数组来解决这个问题,如下所示:

if let aArray = thisArray as? JunkButton[]{
var aButton = aArray[0]
}

这看起来很麻烦,特别是如果我确定我事先知道数组是由什么类型组成的。有没有一种方法可以在创建 thisArray 时对其进行转换,这样我就可以提取它的元素而无需每次都展开它们?

最佳答案

Dictionary 始终为您提供 Optional 值。

你的代码是这样的

let thisArray : Optional<AnyObject[]> = jDict[key]

你需要解包它以获得非可选值

let thisArray = jDict[key]! // thisArray is AnyObject[]

关于ios - 尝试访问字典中 AnyObject 数组的成员时出错 - 有没有办法解包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24624172/

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