有人可以发布NSNumber的完整示例用法吗?

时间:2009-09-03 23:24:53

标签: iphone xcode iphone-sdk-3.0 nsnumber

我甚至不确定,例如,我是否可以像普通变量一样使用它。似乎没有可变版本。并且可变意味着它的价值可以改变吗?

2 个答案:

答案 0 :(得分:6)

“完整示例用法”是什么意思?你能给出你正在寻找的那种例子的背景吗?

将某些东西用作“正常”变量是什么意思?

您可以使用NSNumber函数获取numberWithXXX,这些函数会返回自动释放的对象,或者执行标准alloc / init

NSNumber* myAllocedNumber = [[NSNumber alloc] initWithFloat:0.0f];
// ...use it...
[myAllocedNumber release];

NSNumber* myAutoreleasedNumber = [NSNumber numberWithFloat:0.0f];

您可以稍后更改指针指向的位置,但无法更改值:

NSNumber* myAutoreleasedNumber = nil;
myAutoreleasedNumber = [NSNumber numberWithFloat:0.0f];
// ...use it...
myAutoreleasedNumber = [NSNumber numberWithInt:1000];

答案 1 :(得分:0)

您始终可以为不可变变量分配不同的对象引用,以便它可以工作:

 NSNumber  *intKey;

        NSMutableArray *backToString =[[NSMutableArray alloc] init];

        while ((intKey = [enumerator nextObject])) {
            //(NSNumber *)integer = [key integerValue];
            [backToString  addObject:[intKey stringValue]];
            // code that uses the returned key 
        }