iOS:如何检查“int”值是否等于“nil”

时间:2011-08-23 11:15:19

标签: ios if-statement int null

我在我的一个方法中定义了一个int值:

int value = [self someMethodThatGetsAnINT];

后来我有一些“ifs”来检查这个值。

如何表达: if(value == nil)

当我尝试这样直观的代码编写时,我会收到警告:

语义问题:指针和整数之间的比较('int'和'void *')

3 个答案:

答案 0 :(得分:15)

nil只是0 :)试试这个:

if (0 == value)

但是,为什么要对int进行nil测试 - 这听起来很有趣:)

答案 1 :(得分:4)

如果你真的想要返回一个nil值,你可能应该使用NSNumber作为返回类型而不是int。 NSNumber是一个在objective-c中包含标量值的类。当你有一个有效的返回值时,可以在其中放入一个整数,否则返回nil。

答案 2 :(得分:0)

你可以使用if (value == (int)nil)但实际上一个返回int的函数不应该返回nil,因为nil不是一个整数(虽然它可以用相似的方式表示)。

this可能有助于清除它