最新消息:文章中包含代码时,请遵守代码高亮规范!

iOS – nil、Nil、NULL、NSNull介绍和开发中对象为空的判断

原创文章 user 128浏览 0评论

在开发中我们会经常遇到得数据为空的判断。

比如我们在获取地址省市区信息的时候,有时会因为某些市没有区的情况导致返回空<null>,如果这样进行网络请求会出现app奔溃的情况,所以这时候我们就要进行数据判断之后在去发送请求。

一、首先我们先对iOS开发中遇到的空值进行介绍:

  1. nil :指向一个对象的空指针,nil是一个空对象,已经完全从内存中消失了
  2. Nil :指向一个类的空指针(完全等同于nil 但是常用于类置空)
  3. NULL :指向其他类型的空指针(比如:基本类型和c类型).
  4. NSNull :通常表示集合中的类型(其实它也是一个对象,拥有有效的内存地址)[NSNull null] 

二、对JSON返回的<null>进行判断

if([result isEqual:[NSNull null]]) {
     //result是从服务器返回的数据
     //在这里进行操作
}

三、对(null)的判断

if(result == nil) {
   //在这里进行操作
}

四、基本数据类型的空值判断

对于类似于NSString类型的数据进行空值判断
NSString *string;
1、string == nil;
2、[string isEqualToString:@""];
对于类似于NSNumber类型的数据进行空值判断
NSNumber *number;
1、number == nil;
2、[number isEqualToNumber:@0]
对于类似于NSArray类型的数据进行空值判断
NSArray *array;
1、array == nil;
2、array.count = 0;
对于类似于NSDictionary类型的数据进行空值判断
NSDictionary *dictionary;
1、[dictionary isEqual:[NSNull null]];
2、dictionary.count = 0;
对于对象类型的数据进行空值判断
可以使用 !(非) 来判断
if(!class) return;

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/25305.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者Miya的打赏,我们会更加努力!    如果您想成为作者,请点我

发表我的评论
取消评论

表情