gpt4 book ai didi

ios - (null) 和 之间的区别

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:29:14 26 4
gpt4 key购买 nike

序列化 JSON 时,我有两种类型的 null:(null)<null>作为 NSDictionary 的值.

有什么区别以及如何针对每个进行验证?

最佳答案

如果这些是由 NSLog() 打印的描述, 然后 (null)nilNULL指针,可能是调用 objectForKey: 的结果在未定义键的字典上。相比之下,<null>NSNull 的实例;可能是 JSON 解析器抛出的占位符,表示 null原始 JSON 中的值。

您可以测试 nilNULL通过将对象与空指针进行比较(或简单地在需要逻辑表达式的上下文中使用它们):

if ([dict objectForKey:@"NonExistentKey"] != nil) {
// yay, existent!
}

然而,NSNull是一个合适的 Objective-C 类,因此它的实例将通过 isEqual: 进行比较留言:

if ([[dict objectForKey:@"KeyOfWhichValueIsNull"] isEqual:[NSNull null]]) {
// `null` in the JSON, but NOT `nil` or `NULL` at runtime!
}

关于ios - (null) 和 <null> 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20089710/

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