加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

NSNull如何在Swift中转换为零?

发布时间:2020-12-14 05:35:50 所属栏目:百科 来源:网络整理
导读:我想从我的服务器获取 JSON数据,并在启动时对其进行操作.在Objective-C中,我使用这个#define代码将NSNull转换为nil,因为获取的数据有时可能包含null. #define NULL_TO_NIL(obj) ({ __typeof__ (obj) __obj = (obj); __obj == [NSNull null] ? nil : obj; })
我想从我的服务器获取 JSON数据,并在启动时对其进行操作.在Objective-C中,我使用这个#define代码将NSNull转换为nil,因为获取的数据有时可能包含null.
#define NULL_TO_NIL(obj) ({ __typeof__ (obj) __obj = (obj); __obj == [NSNull null] ? nil : obj; })

但是,在Swift中,是否可以将NSNull转换为零?我想使用以下操作(代码是Objective-C的):

people.age = NULL_TO_NIL(peopleDict["age"]);

在上面的代码中,当获取的数据的年龄键为NULL时,人物对象的.age属性设置为nil.

我使用Xcode 6 Beta 6.

这可能是你正在寻找:
func nullToNil(value : AnyObject?) -> AnyObject? {
    if value is NSNull {
        return nil
    } else {
        return value
    }
}

people.age = nullToNil(peopleDict["age"])

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读