我正在使用NSNumber来处理iPhone应用程序,看看我能用它做些什么。对于我的大多数变量,我简单地将它们存储为“int”或“float”或诸如此类的东西。但是,当我必须传递一个对象(如在词典中)时,我需要它们作为对象。我用NSNUmber。这是我初始化对象的方式。
NSNumber *testNum = [NSNumber numberWithInt:varMoney];
其中“varMoney”是我之前在程序中声明的int。但是,我完全不知道如何获得这个号码......
例如:
varMoney2 = [NSNumber retrieve the variable...];
如何从对象中获取值并再次将其设置为常规“int”?
谢谢!
(出于好奇,有没有办法直接将“int”存储在Objective-C字典中,而不是先将它放在NSNumber中?)
答案 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];