【发布时间】:2020-09-28 10:49:09
【问题描述】:
我正在尝试对两个数字(例如 A 和 B)执行多个操作。这两个数字是通过单个字符串输入的。所以我将它们转换为Double 值并对它们执行操作。
问题是输出总是double。如果结果是整数,例如2 而不是2.0,我希望得到整数答案。
案例:
-
A= 2和B= 2(输入字符串)=>提取成浮点变量=> varA= 2.0, varB=2.0 当前结果=> 4.0(简单*运算)最优结果=>4 -
A= 2.0和B= 2.0(输入字符串)=>提取成浮点变量=> varA= 2.0, varB=2.0 当前结果=> 4.0(简单*运算)最优结果=>4.0
我查了一下,没有多大帮助。因此,此类问题要么涉及转换,要么涉及精度。我可能错过的任何类似/有帮助的问题的链接也可以。我知道如何从float 转换为int,但正在寻找最佳 方法来检查一个数字是否可以用int 表示。并得到相应的结果。
谢谢
【问题讨论】:
-
即使数学值是整数,用浮点数计算的结果也可能不是(由于舍入误差)。
-
@Henry 是的,我阅读了这些问题,以后可能会更改我的代码。这就是为什么我没有专注于运营商/运营部分,只是寻找我可以采取的转换路径。
-
重点是,将浮点值转换为整数以使其看起来更漂亮是数学上不合理的。你不应该这样做。如果“老板”问你,你应该向他(或她)解释数学,以说服他漂亮的答案是错误的答案。
-
@StephenC 说的太对了哈哈。
标签: java