首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在NSString中将NSNumber转换为iPhone时的问题

问在NSString中将NSNumber转换为iPhone时的问题
EN

Stack Overflow用户
提问于 2010-07-02 19:56:30
回答 1查看 1.1K关注 0票数 1

当将字符串(YaxisData)转换为NSNumber时,我遇到了问题。我必须返回一个核心图的NSNumber来完成这个图,但是它不能工作。这是示例代码

代码语言:javascript
复制
-(NSNumber *)numberForPlot:(CPPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index{

NSNumber *num = [NSNumber numberWithDouble:[[YaxisData objectAtIndex:index] doubleValue]];
return num;

}

num返回垃圾数据,如-1或993494949494,但当我记录数字的双值时,它会打印正确的值。我无法返回这个双值,因为函数签名只要求返回NSNumber。

代码语言:javascript
复制
NSLog(@"Number: %f", [num doubleValue]);

我被困在这里,希望能在这方面提供任何帮助。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2011-04-21 21:33:22

这会带来更好的结果吗?

代码语言:javascript
复制
NSString *aString = [YaxisData objectAtIndex:index];
NSLog(@"%@", aString);
double value = [aString doubleValue];
NSLog(@"%f", value);
NSNumber *number = [NSNumber numberWithDouble:value];
NSLog(@"%@", number);

如果没有,可以显示NSLog()的结果吗?

我知道在实践中它看起来是相同的代码,但是人们可能不太确定-objectAtIndex:总是返回一个字符串。这也可能是一个本地化问题(小数点分隔符的逗号和点可能会混淆,这肯定会使您的结果一团糟。如果出现本地化问题,请检查以下链接:

How to convert an NSString into an NSNumber

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3168748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档