zoukankan      html  css  js  c++  java
  • 学习笔记-nil NULL NSNull Nil的区别

    nil--表示实例对象为空  例如  NSString * string = nil;
        
                                          NSArray * array = nil;    我们对于nil的调用 不会产生crash或者异常。例如,一个数组release了,但是没有nil,调用它或直接crash的,但是nil掉的话,就不会crash。

    NULL --(只是一个值)可以用在c语言的各种指针上   char * aa = NULL;
        
                                                      int mm = NULL;

    Nil --表示一个空类。 Class rootViewController = Nil;

    NSNull -- 它是一个单例类,.h里面 + (NSNull *)null; 它定义了一个单例类对象用来表示集合对象里面的空值。例如我的目的是 一个字典里面包含两个键值,最后的键值的值为空。

                                                                                                                       1. NSNumber * num = [NSNumber numberWithInt:1];
        
                                                                                                                       NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:num,@"1",nil,@"2", nil];打印dic  只剩下一个键值,{
                                                                                                                                                                                                                                                                                             1 = 1;
                                                                                                                                                                                                                                                                                                     }

                                                                                                                       2. NSNumber * num = [NSNumber numberWithInt:1];
      
                                                                                                                       NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:num,@"1",NULL,@"2", nil];打印dic  只剩下一个键值,{
                                                                                                                                                                                                                                                                                             1 = 1;
                                                                                                                                                                                                                                                                                                     }

                                                                                                                       3. NSNumber * num = [NSNumber numberWithInt:1];
      
                                                                                                                       NSDictionary * dic = [NSDictionary dictionaryWithObjectsAndKeys:num,@"1",[NSNull null],@"2", nil];打印dic  只剩下一个键值,{
                                                                                                                                                                                                                                                                                           1 = 1;  

                                                                                                                                                                                                                                                                                           2 = "<null>";
                                                                                                                                                                                                                                                                                                     }

    实例说明   要想保证两个键值的要求,只有[NSNull null] 可以做到,这就是[NSNull null]与nil   NULL的区别。

  • 相关阅读:
    至最近写的微博记录(一)
    对古人“一命二运三风水,四积德五读书”的人生命运总结的理解
    福建省获得央行颁发的非金融机构支付业务许可牌照的公司(至20120801)
    替信息系统运维工作正名
    在信息系统运维开发中,对MVC框架认识上的一种变通
    Elasticsearch 从入门到学会之六(索引API特殊管理)
    Python的Web项目实现 Flask
    python的方法整理
    Shell脚本
    各种测试场景case整理
  • 原文地址:https://www.cnblogs.com/luningning0901/p/4876542.html
Copyright © 2011-2022 走看看