服务器返回的数据,用数据类型接收(int,NSNumber)?

来源:互联网 发布:诺基亚 x311玩java 编辑:程序博客网 时间:2024/06/08 06:51

NSNumber

  • 字典转模型时,关于数字的赋值的问题和解决办法.

  • 定义模型类时,当要保存字符串时,使用 NSString.

// 当 messageId 为字符串的时候,使用 NSString 接收@property (nonatomic,copy) NSString *messageId;

问题

  • 定义模型类时,当要保存数字时,使用 int.
  • 注意 : int类型的变量,不能赋值为nil(空对象)或者null(空值),若强行赋值会崩溃.
// 问题 : 字典转模型时,当给 int类型的 messageId 赋空值时就会崩溃.@property (nonatomic,assign) int messageId;

解决

  • 保存数字除了 int 以外 还有 NSNumber.
  • NSNumber 既能保存空值,又能保存数字.
// 解决 : 使用 NSNumber 既能保存空值,又能保存数字@property (nonatomic,strong) NSNumber *messageId;
                                             
0 0