首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >双转换为NaN

双转换为NaN
EN

Stack Overflow用户
提问于 2014-05-04 01:02:48
回答 1查看 544关注 0票数 0

我在写一个按揭计算器应用程序。我已经初始化了双purchPrice、downPay和interestRate。所有三个双倍都初始化为0.0。我有三个支付选项tenPay、twentyPay和thirtyPay,它们都初始化为0.0。运行以下代码行后,tenPay变为NaN,另外两行代码为0.0。我搞不懂为什么会发生这种事,我很想再多看一看。

代码语言:javascript
复制
tenPay = ((purchPrice - downPay) * (interestRate * .01) / (10/12));
twentyPay = ((purchPrice - downPay) * (interestRate * .01) / (20/12));
thirtyPay = ((purchPrice - downPay) * (interestRate * .01) / (30/12));

我很确定我的数学有问题,请不要理会。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-04 01:09:26

您的问题在于10/12部分。Java将它们都解释为整数,并将结果舍入,因此它变为0。除以0生成NaN。

另外,20/1230/12都将计算为2。虽然这不会产生错误,但它不会返回正确的结果。

您可以通过将每个12更改为12.0来解决所有这些问题。

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

https://stackoverflow.com/questions/23451474

复制
相关文章

相似问题

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