0
我正在做一些iOS學習,並且我有一個NSNumber,它似乎是按順序的,但是當我詢問它的doubleValue時,我得到空值。NSNumber doubleValue方法在目標C(IOS)中返回null
[stack addObject: [NSNumber numberWithDouble:operand]]
id topOfStack = [stack lastObject];
if([topOfStack isKindOfClass:[NSNumber class]]){
NSLog(@"%@",topOfStack);
NSLog(@"%@",[topOfStack class]);
result = [topOfStack doubleValue];
NSLog(@"%@",result);
}
此打印:
2012-04-11 17:52:04.909 RPNCalc[4127:f803] 3
2012-04-11 17:52:04.910 RPNCalc[4127:f803] __NSCFNumber
2012-04-11 17:52:04.910 RPNCalc[4127:f803] (null)
爲什麼會中的doubleValue出來爲空?
你是說%f對吧? – CodaFi 2012-04-11 22:07:13
@CodaFi no%g將被接受 – 2012-04-11 22:09:28
@CodaFi Apple的NSString格式說明符與IEEE的printf格式符合,因此%f,%e,%E,%g和%G都可以工作(但打印方式稍有不同) – Vervious 2012-04-11 22:43:35