NSNull的使用

集合中是不能存放nil值的,因为nil在集合中有特殊含义,但有时确实需要存储一个表示“什么都没有”的值,那么就可以使用NSNull,它也是NSObject的一个子类。 创建和获取NSNull的方法 + (NSNull *)null [NSNull null]总是返回一样的值,所以可以用==将该值与其他值进行比较。

NSMutableDictionary *dict = [NSMutableDictionary dictionary];

[dict setValue:[NSNull null] forkey:@"work number"];

id value = [dict valueForKey:@"work number"];

if(value == [NSNull null]){

  NSLog(@"work number dosen‘t exist.");

}

NSNull的使用

时间: 2024-11-09 10:44:07

NSNull的使用的相关文章

nil/Nil/NULL/NSNull区别

nil:指向oc中对象的空指针 Nil:指向oc中类的空指针 NULL:指向其他类型的空指针,如一个c类型的内存指针 NSNull:在集合对象中,表示空值的对象 若obj为nil: [obj message]将返回NO,而不是NSException 若obj为NSNull: [obj message]将抛出异常NSException

NULL、nil、Nil、NSNull的区别

标志 值 含义 NULL (void *)0 C指针的字面零值 nil (id)0 Objecve-C对象的字面零值 Nil (Class)0 Objecve-C类的字面零值 NSNull [NSNull null] 用来表示零值的单独的对象

ios nil null Nil NSNull区别

nil.Nil.NULL.NSNull的区别 nil:指向一个对象的空指针 Nil:指向一个类的空指针 NULL:指向其他类型(如:基本类型.C类型)的空指针 NSNull:通常表示集合中的空值 举例: NSURL *url = nil; Class class = Nil; int *pointerInt = NULL; NSArray *array = [NSArray arrayWithObjects:[[NSObject alloc] init], [NSNull null], [[NS

step 5 NULL & nil & Nil & NSNULL

NULL & nil & Nil & NSNULL nil 是 OC 的,空对象,地址指向 空(0) 的对象 在 OC 中,可以给空对象发送任何消息,不会出现错误 NULL 是 C 的,空地址,地址的数值是 0,是一个长整数 表示地址是空 NSNull 用于解决向 NSArray 和 NSDictionary 等集合中添加空值的问题 值 定义 NULL (void *)0 C指针的字面零值 nil (id)0 Objective-C对象的字面零值 Nil (Class)0 Obje

(未解决)[NSNull intValue]: unrecognized selector sent to instance 0x375c9860

今天遇到这个问题,程序崩溃了……日志如下: -[NSNull intValue]: unrecognized selector sent to instance 0x375c9860*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull intValue]: unrecognized selector sent to instance 0x375c9860' ***

iOS下nil 、NULL、 Nil 、NSNull的区别你造吗

nil 定义一个实例为空, 指向oc中对象的空指针. NSString *someString = nil; NSURL *someURL = nil; 当对某个对象release 的同时最好把他们赋值为nil,这样可以确保安全性,如果不赋值nil,可能导致程序崩溃. NULL NULL可以用在C语言的各种指针上 #define __DARWIN_NULL #define__DARWIN_NULLConstants int *pointerToInt = NULL; char *pointerT

数值类对象:NSNumber,NSValue,NSNull

基本,集合,复杂,对象 可用对象封装基本数值,然后将对象放入NSArray或NSDictionary 中. 用对象封装基本数值后,即可给其发送消息. 数值类型包括:NSNumber,NSValue,NSNull类. oc不支持自动装箱 NSNumber类 创建方法 + (NSNumber *)numberWithChar:(char)value; + (NSNumber *)numberWithInt:(int)value; + (NSNumber *)numberWithFloat:(floa

iOS中使用nil NULL NSNULL的区别

nil NULL NSNULL的区别主要以下几点 1.nil:一般赋值给空对象 2.NLL:一般赋值给nil之外的其他空值.入SEL等. 3.NSULL:NSNULL只有一种方法+ (NSNull *) null; [NSNull null]用来在NSArray和NSDictionary中加入非nil(表示列表结束)的空值 4.注意:当想ni发送信息的时候,返回NO,不会有异常,程序可以继续执行下去:而向NSNULL对象发送消息的时候会收到异常 nil: A null pointer to an

[swift、oc]浅聊nil、Nil、NULL、NSNull的区别

我们都知道nil.Nil.NULL.NSNull都表示为空但是究竟有什么区别,相信大家也很少关注.今天我们就浅聊一下这几个空的区别 1.nil nil一般是指把一个对象置空,既完全是一个空对象,完全从内存中释放. 2.Nil Nil和nil基本没有任何区别,也可以说只要是可以使用nil的地方都可以使用Nil,反之亦然.但是作为程序猿,我们应该更加严谨一些.nil和Nil的区别在于,nil表示置空一个对象,二Nil表示置空一个类. 3.NULL 大家都知道oc 是基于c的,并且oc是完全兼容c的,

nil和Nil及NULL、NSNull的区别

nil:  是一个对象值:如果我们要把一个对象设置为空的时候就用nil; A null pointer to an Objective-C object. ( #define nil ((id)0) ) Nil :是一个类对象的值,如果我们要把一个Class类型的对象设置为空的时候就用Nil ; A null pointer to an Objective-C class. NULL  是一个通用指针:A null pointer to anything else. ( #define NULL