[ios]优势或解析 JSON 时使用 NSDictionary 的好处是什么?

发布时间: 2017/3/21 23:28:57
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我知道我们通常使用 NSDictionaryNSArray 我们做序列化,但我不知道有什么优势,是否我们喜欢 NSDictionary 吗?

NSError* error;
NSDictionary* json = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error];

解决方法 1:

这不是见仁见智的问题。JSONObjectWithData:方法返回类型的对象的 id

从 JSON 数据中的数据或为零,如果发生错误的基础对象。

所以它不是您可以选择是否要 NSArrayNSDictionary 。事实上,你应该总是让一个检查,以确保返回的对象是你所期望的类型。

代码应类似于︰

NSError* error;
id JSONObject = [NSJSONSerialization JSONObjectWithData:responseData 
                                                options:kNilOptions 
                                                  error:&error];

if ([JSONObject isKindOfClass:[NSDictionary class]])
{
    NSDictionary *JSONDictionary = (NSDictionary *)JSONObject;

    // Do your stuff.
}

否则,您要冒系统崩溃时 JSON 从您正在调用该终结点返回不是你别指望一本字典了,但一个数组或任何东西。

赞助商