gpt4 book ai didi

arrays - 如何在 swift 3.0 xcode 8.2 beta 的 NSMutableArray 中仅存储一个响应对象?

转载 作者:行者123 更新时间:2023-11-28 16:03:58 25 4
gpt4 key购买 nike

var arrayData:NSMutableArray = []
if let arrayData = response.result.value{
print("JSON: \(arrayData)")
}

我有如下回复:

JSON: {
Data = (
{
"Title" = "xyz";
"Value" = 10;
},
{
"Title" = "abc";
"Value" = 20;
}
);
Success = True;}

此代码将整个响应存储在数组中,而不是我只想在我的 arrayData 实例中存储数据对象数组

最佳答案

您与if let 一起使用的arrayData 实例不是NSMutableArray 类型的类实例属性arrayData ,它仍然保留在那个 block 中,它也不是数组,它是字典,如果你只想要你需要写的数据数组的话。

if let dic = response.result.value as? [String: Any], let array = dic["data"] as? NSArray {
self.arrayData = NSMutableArray(array: array)
}

在 Swift 中,如果你使用 Swift 的原生 ArrayDictionary 而不是 NSArrayNSDictionary 就更好了,因此,如果您想使用 native 数组,则将您的 arrayData 声明为 [[String:Any]] 表示 Dictionary 数组而不是 NSMutableArray 并像这样使用它。

var arrayData = [[String:Any]]()

if let dic = response.result.value as? [String: Any], let array = dic["data"] as? [[String:Any]] {
self.arrayData = array
}

关于arrays - 如何在 swift 3.0 xcode 8.2 beta 的 NSMutableArray 中仅存储一个响应对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40583454/

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