NSNumber,设置和检索

时间:2009-11-10 00:44:47

标签: iphone objective-c nsnumber

我正在使用NSNumber来处理iPhone应用程序,看看我能用它做些什么。对于我的大多数变量,我简单地将它们存储为“int”或“float”或诸如此类的东西。但是,当我必须传递一个对象(如在词典中)时,我需要它们作为对象。我用NSNUmber。这是我初始化对象的方式。

NSNumber *testNum = [NSNumber numberWithInt:varMoney];

其中“varMoney”是我之前在程序中声明的int。但是,我完全不知道如何获得这个号码......

例如:

varMoney2 = [NSNumber retrieve the variable...];

如何从对象中获取值并再次将其设置为常规“int”?

谢谢!

(出于好奇,有没有办法直接将“int”存储在Objective-C字典中,而不是先将它放在NSNumber中?)

2 个答案:

答案 0 :(得分:8)

你想要-intValue,或者它的一个朋友(-floatValue,-doubleValue等)。来自文档:

  

intValue返回接收者的值   作为一个int。

     

- (int)intValue

     

返回值接收者的值为   一个int,根据需要进行转换。

代码如下:

int varMoney2 = [testNum intValue];

答案 1 :(得分:3)

NSNumber *testNum = [NSNumber numberWithInt:varMoney];
/* Then later... */
int newVarMoney = [testNum intValue];