![](/img/trans.png)
[英]iPhone: can i have a solution for converting NSNumber into NSString
[英]Problem when converting NSString to NSNumber in iPhone
将字符串(YaxisData)转换为NSNumber时出现问题。 我必须为Core-plot返回一个NSNumber来完成图,但它不起作用。 这是示例代码
-(NSNumber *)numberForPlot:(CPPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index{
NSNumber *num = [NSNumber numberWithDouble:[[YaxisData objectAtIndex:index] doubleValue]];
return num;
}
num返回垃圾数据,例如-1或993494949494,但是当我记录number的双精度值时,它将打印正确的值。 我无法返回此double值,因为函数签名仅需要返回NSNumber。
NSLog(@"Number: %f", [num doubleValue]);
我被困在这里,非常感谢在这方面的任何帮助。 谢谢!
以某种方式会带来更好的结果吗?
NSString *aString = [YaxisData objectAtIndex:index];
NSLog(@"%@", aString);
double value = [aString doubleValue];
NSLog(@"%f", value);
NSNumber *number = [NSNumber numberWithDouble:value];
NSLog(@"%@", number);
如果没有,您可以显示NSLog()的结果吗?
我知道在实践中看起来似乎是相同的代码,但是可能无法确保-objectAtIndex:始终返回字符串。 这也可能是一个本地化问题(小数点的逗号和点可能会混在一起,这肯定会弄乱您的结果。如果出现本地化问题,请检查以下链接:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.