检查Null值

时间:2015-05-13 17:18:40

标签: ios objective-c

我收到字符串电子邮件是(null)。

我正在使用此代码

if(email==(id) [NSNull null] || [email length]==0 || [email isEqualToString:@""]) {
    NSLog(@"hello");
}
if ([email length] == 0) {
    NSLog(@"hello");
}

if ([email isKindOfClass:[NSNull class]]) {
    NSLog(@"my");
}

我没有得到任何log.How我们检查字符串中的空值。我被卡住了。

2 个答案:

答案 0 :(得分:1)

您应该通过

检查(null)
if (email == nil) {
    NSLog(@"null2");
}

或只是

if (!email) {
    NSLog(@"null1");
}

NSNull类用于将空值放在通常使用null作为终止符号的集合中。有关NSNull课程的详细信息,请参阅apple docs

答案 1 :(得分:0)

除非创建该电子邮件字符串对象的代码可以返回NSNull对象(即它来自NSJSONSerialization),否则最简单的方法是检查您是否有非零的非空字符串是

if (email.length) {
    NSLog(@"Got an email address");
}

如果它可以是NSNull,则应使用

[email isKindOfClass:[NSNull class]]

首先检查其类型,然后检查其长度