IOS注意之nil,Nil,NULL,NSNull


nil,Nil,NULL,NSNull区别


一般:

nil---指向对象类型的空指针

Nil---指向类类型的空指针

NULL---指向基本类型或c类型的空指针

NSNull---空对象,经常作为占位符使用

实际上

对象类型空指针---nil,Nil,NULL均可

类类型空指针---nil,Nil,NULL均可

基本类型---NULL可以,而nil,Nil不可,报错

    NSString *a = nil;
    NSLog(@"%@",a);
    NSString *str = Nil;
    NSLog(@"%@",str);
    NSString *str2 = NULL;
    NSLog(@"%@",str2);
    int b = NULL;
    int *bb = NULL;
//    *bb = nil;//报错
//    *bb = Nil;//和上面一样报错
    Class class = Nil;
    class = nil;
    class = NULL;



NSNull使用

    NSArray *array = [NSArray arrayWithObjects:[NSNull null],@"123",[NSNull null],@"456", nil];
    for (NSString *content in array) {
        NSLog(@"%@",content);
    }

返回值

2014-12-05 09:38:33.015 IOSStudy[97922:3474037] <null>
2014-12-05 09:38:33.015 IOSStudy[97922:3474037] 123
2014-12-05 09:38:33.018 IOSStudy[97922:3474037] <null>
2014-12-05 09:38:33.018 IOSStudy[97922:3474037] 456

这部分还有需要注意的是在解析后台传过来的json数据的时候,如果遇到如"aaa":null,这是会被解析成NSNull的,而不是空,是空对象。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值