2

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

NSNumber *testNum = [NSNumber numberWithInt:varMoney];

其中“varMoney”是我在程序前面声明的一个 int。但是,我完全不知道如何找回那个号码......

例如:

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

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

谢谢!

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

4

2 回答 2

8

您需要 -intValue 或其朋友之一(-floatValue、-doubleValue 等)。从文档:

intValue 以 int 形式返回接收者的值。

- (int)intValue

返回值 接收器的值作为 int,根据需要进行转换。

代码将是:

int varMoney2 = [testNum intValue];
于 2009-11-10T00:47:38.260 回答
3
NSNumber *testNum = [NSNumber numberWithInt:varMoney];
/* Then later... */
int newVarMoney = [testNum intValue];
于 2009-11-10T00:46:58.917 回答