gpt4 book ai didi

objective-c - 我可以最小化此 SBjson 代码中使用的对象数量吗?

转载 作者:行者123 更新时间:2023-11-29 04:57:08 25 4
gpt4 key购买 nike

我从服务器收到的响应的格式如下:

{
"Data":{
"Key": "Value"
...
},
"Key": "Value"
...
}

但是,我只对“数据”下的元素感兴趣。这是我当前正在使用的代码:

SBJsonParser *parser = [SBJsonParser new]; 
NSString *responseString = [request responseString];
NSDictionary *responseData = [parser objectWithString:responseString];
NSString *infoString = [responseData objectForKey:@"Data"];
NSDictionary *infoData = [parser objectWithString:infoString];

有没有办法在不显式声明 5 个对象的情况下执行相同的操作?只是寻找一些我应该使用的速记方式。

最佳答案

你的最后两行是错误的 - "Data" 实际上是一个 NSDictionary,所以你不需要双重解析它。

此外,大多数 Objective-C 程序员都会在他们知道返回是安全的地方嵌套调用 - 我的意思是不需要额外的检查。例如,这对我来说是一个更自然的实现:

NSDictionary *responseDictionary = [[request responseString] JSONValue];
NSDictionary *infoData = [responseDictionary objectForKey:@"Data"];

请注意,我使用的是 SBJSON 附带的 NSObject 类别中的便捷方法 JSONValue

关于objective-c - 我可以最小化此 SBjson 代码中使用的对象数量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7722050/

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