gpt4 book ai didi

objective-c - 如何让 NSMutableDictionary 接受 'nil' 值?

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

我有这个声明:

 [custData setObject: [rs stringForColumnIndex:2]  forKey: @"email"];

从 SQLite3 d/b 获得的 [rs stringForColumnIndex:2] 的值为 nil。该应用程序崩溃给我错误:

NSCFDictionary setObject:forKey:]: attempt to insert nil value (key: email)'

有没有办法避免这种情况? (比如 NSMutableDictionary 的设置?)

更新:这是我最终做的:

[custData setObject: ([rs stringForColumnIndex:2] != nil? [rs stringForColumnIndex:2]:@"") forKey: @"email"];

最佳答案

有一个非nil 对象叫做NSNull它专门用于在“普通”nil Not Acceptable 情况下表示 nil。如果您将 nil 替换为 [NSNull null] 对象,NSDictionary 将接受它们。不过,您需要在出路时检查 NSNull

请注意,仅当您必须区分未设置的值和设置为 nil 的值时,这才重要。如果您的代码可以将缺失值解释nil,则您根本不需要使用NSNull

关于objective-c - 如何让 NSMutableDictionary 接受 'nil' 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10856753/

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