Ini adalah kode contoh:
NSDictionary *myDictionary = [NSDictionary dictionary];
NSNumber *myNumber = [myDictionary valueForKey: @"MyNumber"];
NSLog(@"myNumber = %@", myNumber); // output myNumber = (null)
if (myNumber == nil)
NSLog(@"test 1 myNumber == nil");
if (myNumber == NULL)
NSLog(@"test 2 myNumber == NULL");
if ([myNumber isEqual:[NSNull null]])
NSLog(@"test 3 myNumber == [NSNull null]");
Kapan saya harus menggunakan nil, NULL dan [NSNull null]?
nil
berarti semacam NULL
untuk instance objc. Jadi, Anda dapat menandai nilai spesifik yang dimaksudkan untuk instance objc atau penunjuk generik. Mengingat manajemen jenis dan keamanan, ini akan banyak membantu Anda.
nil
dan null
/ NULL
sama - keduanya didefinisikan sebagai nol. Sebagai formalitas, gunakan nil
saat coding Objective-C dan NULL
ketika coding pernyataan / panggilan C / C ++ biasa. NSNull
adalah sesuatu yang sama sekali berbeda. Ini adalah objek tunggal yang berfungsi sebagai tempat-penampung untuk mewakili "tidak ada" di, misalnya, NSDictionary di mana nil / null pointer tidak diizinkan.