हम सब सहमत हैं कि [NSNull अशक्त] एक प्लेसहोल्डर जहां एक वस्तु की आवश्यकता है, जैसा कि ऊपर सविस्तार के रूप में उपयोगी है। लेकिन जब तक कि यह स्पष्ट रूप से आपके ऑब्जेक्ट के लिए असाइनमेंट में उपयोग नहीं किया जाता है, इसे तुलना में इस्तेमाल नहीं किया जाना चाहिए, जो मैंने पहले किया था।
id a;
NSLog(@"Case 1");
if (a == nil) NSLog(@"a == nil");
if (a == Nil) NSLog(@"a == Nil");
if ([a isEqual:[NSNull null]]) NSLog(@"a isEqual:[NSNull null]");
NSLog(@"Case 2");
a = [NSNull null];
if (a == nil) NSLog(@"a == nil");
if (a == Nil) NSLog(@"a == Nil");
if ([a isEqual:[NSNull null]]) NSLog(@"a isEqual:[NSNull null]");
आउटपुट:
2014-01-31 10: 57: 11.179 MCDocsApp [13,266: a0b] प्रकरण 1
2014-01-31 10: 57: 11.179 MCDocsApp [13,266: a0b ] एक == शून्य
2014-01-31 10: 57: 11.179 MCDocsApp [13,266: a0b] एक == शून्य
2014-01-31 10: 57: 11.180 MCDocsApp [13,266: a0b] केस 2
2014-01-31 10: 57: 11.180 एमसीडीओक्सएप [13266: ए0 बी] एक आईक्वाल: [एनएसएनुल नल]
इससे बेहतर नहीं मिलता ---> http://nshipster.com/nil/ –