gpt4 book ai didi

objective-c - 与 objective-c 中的 null 进行比较

转载 作者:太空狗 更新时间:2023-10-30 03:31:59 25 4
gpt4 key购买 nike

我开始发现我的代码中充斥着:

if([p objectForKey@"somekey"] != [NSNull null]) {

}

NULL 是否有更短的(按字符)比较?

背景:我正在使用 SBJson 库解析 JSON 字符串,并且某些键通常有空值(按设计)。

最佳答案

没有内置的东西,但是创建一个可以进行您想要的比较的函数 MYIsNull() 是合理且简单的。请仔细考虑在 key 丢失的情况下您想要返回的内容。

您可能想换一种方式,将 -null 转换为 nil。例如,您可以像这样在 NSDictionary 上添加一个类别:

- (id)my_nonNullObjectForKey:(NSString *)key {
id value = [self objectForKey:key];
if ([value isEqual:[NSNull null]) {
return nil;
}
return value;
}

关于objective-c - 与 objective-c 中的 null 进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16989479/

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