我需要在数组中存储一个int,我尝试这种方式,将int转换为NSNumber
,但integer
最终为136894816 ...有人可以帮我解决这个问题吗?
NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:5];
NSNumber *num = [NSNumber numberWithInt:10];
[array insertObject:num atIndex:0];
int integer = [array objectAtIndex:0];
答案 0 :(得分:5)
NSNumber
不是int。您在当前代码中检索的是内存引用。试试这个:
int value = [[array objectAtIndex: 0] intValue];
答案 1 :(得分:1)
尝试
NSNumber* xWrapped = [NSNumber numberWithInt:integer];
[array_name addObject:xWrapped];