0

我有一些数据存储在一个对象中,比如objectA。当我打印 objectA 时,它看起来像:

{
  employeeId = 1234;
  startDate = (null);
  endDate = 2013-10-01 04:59:59 +0000;
}

我将它存储在字典中,如下所示:

NSDictionary *dict = @{@"employee_id" : objectA.employeeId,
                       @"start_date" : objectA.startDate,
                       @"end_date" : objectA.endDate};

当我跨过 dict 代码时发生崩溃,因为我试图在 dict 中插入一个 nil 对象。Error : attempt to insert nil object from objects[1]

这也是将日期传递给字典的正确方法,因为当我通过 isValidJson 检查传递该字典时,应用程序再次崩溃。

我在这里做错什么了吗?在将数据传递给字典时如何处理 null/nil 检查?

4

1 回答 1

3

如果您的日期为 nil,请不要将其包含在字典中的该条目中(然后当您尝试读取该键时,您将返回 nil 结果)或[NSNull null]用作占位符对象(或您可能想要的任何空占位符常量使用 - 就像一个特定的字符串 @"thisismynullstringconstant"),然后当你从字典中读取你的空值时,将它转换为 nil。

于 2013-10-01T21:29:10.380 回答