iOS之判断字符串是否为空字符的方法
Posted Jaycee麦子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS之判断字符串是否为空字符的方法相关的知识,希望对你有一定的参考价值。
- (BOOL) isBlankString:(NSString *)string {
if (string == nil || string == NULL) {
return YES;
}
if ([string isKindOfClass:[NSNull class]]) {
return YES;
}
if ([[string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] length]==0) {
return YES;
}
return NO;
}
NSNull是一个特殊的类,它和nil一样,也代表空值,但二者有区别,NSNull不接收NSArray的那些方法,它只有一个类方法:
+(NSNull *)null;
因此发送NSArray特有的方法或属性访问都会导致程序crash。我们做空值判断的很大一部分原因就是为了在后台接口数据返回一些异常数据的时候,程序能保证稳定性。
举个例子:某些情况下,后台可能由于各种原因,对某个字段返回了null值,这时我们取到的就是[NSNull null]这样一个对象,再比如说,后台可能对某一个数据取值,但取到了0个,这时返回的是一个空组,我们取到的就是@[],空组。
因此判断数组是否为空,需要对各种情况都进行判断。写法有很多种,比如你可以写成:
if (array != nil && ![array isKindOfClass:[NSNull class]] && array.count != 0)
以上是关于iOS之判断字符串是否为空字符的方法的主要内容,如果未能解决你的问题,请参考以下文章
iOS 常用算法之设计一个算法,验证某字符是否为合法IPV4字符
106Java中String类之使用contains()方法判断子字符串是否存在
119Java中String类之通过isEmpty判断是否为空字符串