如何在Objective-C中检查字符是否为空?

4

我需要测试一个属性是否为空。在我的头文件中声明如下:

@property (nonatomic) char nextOperation;

在 .m 文件中:

@synthesize nextOperation;

如果我做错了什么,请指出来,因为我在这个领域还很新。

在一个方法中,我需要测试nextOperation属性是否有值。如果为true(YES?),我应该执行某些操作,然后将该属性赋一个新值。

我尝试过 nextOperation == ''emptyisEmptyisempty ,但是所有都会在Xcode中抛出警告/错误。

2个回答

6

字符不能为空。一个字符是一个标量值,就像一个int - 只是稍微小一点(通常是8位)。您可能想将其与00x00进行比较以满足您的需求。

例如:

if (!self.nextOperation)
{
    //empty nextOperation
}
else
{
    //we got something in nextOperation
}

糟糕,我忘记了在Objective-C中你没有空值,只有默认值。谢谢提醒! - igorsantos07

3

试试这个:

if (self.nextOperation == 0) {
    // it's empty
}

或者简单地说

if (!self.nextOperation) {
}

当您像这样声明属性(没有明确声明一个ivar或使用 @synthesize),您可以使用点语法 (self.property) 访问该属性,或者使用以下划线开头的自动生成的 ivar (_property)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接