我正在尝试创建一个浮动的NSArray。但是,一旦将值添加到数组中,它总是0.0000000。
我做错了什么?
NSLog(@“百分比:%f”,百分比);打印正确的值和
NSLog(@“timeArray:%f”,[timeArray objectAtIndex:i]);总是0.00000。
NSMutableArray *timeArray = [[NSMutableArray alloc] initWithCapacity:count];
for (int i = 0; i < count; i++) {
int time = Counter->getTime(i);
float percent = (float)(time - startTime) / (float)endTime;
NSLog(@"percent: %f" , percent); // This prints correct value
[timeArray addObject:[NSNumber numberWithFloat: percent]];
NSLog(@"timeArray: %f", [timeArray objectAtIndex:i]); // This prints 0.00000
}
我在iphone上并且内存耗尽,这可能导致它吗?
答案 0 :(得分:4)
试
NSLog(@"timeArray: %f", [[timeArray objectAtIndex:i] floatValue]);
最后。
您正在尝试打印出指向NSNumber的指针,而不是存储在其中的值。
答案 1 :(得分:4)
在第二个NSLog中,您正在打印一个NSNumber,而不是内部的浮动...以查看该值..
NSLog(@"timeArray: %f", [[timeArray objectAtIndex:i] floatValue]);