使用Java、JavaScript、Oracle和Windows计算器进行乘法运算
Multiplication with Java, JavaScript, Oracle and Windows Calculator
Javascript代码:
var unitPrice,shippintObj;
var temp2=parseFloat(unitPrice * shippingObj.value);
document.getElementById("pAmountId"+shippingId).value =temp2.toFixed(3) ;
输出:-
563361462829470100000
Java代码:
double b;
long a;
a=456322789;
b=1234567890120.145;
System.out.println(a*b);
DecimalFormat ft=new DecimalFormat("#############################.###");
String c=ft.format(a*b);
System.out.println(c);
输出:-
5.633614628294701E20
563361462829470100000
Oracle(SQL):
select
to_char(456322789*1234567890120.145,'999999999999999999999999999999999D999')
from dual;
输出:-
563361462829470111484.4050
窗口计算器:
a=456322789;
b=1234567890120.145;
结果:-
563361462829470111484.4050
最后,我的问题是,当我使用Java、Javascript、SQL和Windows计算器进行计算时,我的结果与Java、Javascript相同但它不同于SQL、Windows计算器的答案。我想在Java和Javascript中获得Oracle的结果。
您试图得到一个太大的结果,无法以所需的精度放入double
中。在Java中使用BigDecimal类可以获得任意精度,但恐怕您必须在JavaScript中自己实现长算术(除非您找到一个可以使用的好库)
对我来说,这看起来像是一个浮点算术问题——考虑在java代码中使用BigDecimal
而不是double。
相关文章:
- 如何在计算器符号为零时替换它
- 哪个布尔运算更快<或者<=
- 使用JavaScript进行乘法运算
- BMI计算器以Javascript显示结果
- 如何在一个html页面上使用js进行2次乘法运算
- 我可以在不使用乘法运算符“”的情况下进行乘法运算吗*"在JavaScript中
- 计算器的Javascript验证
- 不是每次NaN显示时都在jquery中进行乘法运算
- javascript计算器,点击即可计算
- 在JS中返回数组的大整数运算
- 反向位AND运算
- 安卓计算器:屏幕更高,边缘更边缘
- Javascript旅行计算器不起作用
- 制作一个基本的Javascript计算器
- Javascript统计计算器
- 计算器与数学.round与2小数
- JS中的简单计算器
- 如何将计算器运算元素转换为字符串以获得解,然后将解返回到元素中
- 使用Java、JavaScript、Oracle和Windows计算器进行乘法运算
- 我正在制作一个简单的计算器(+、-、*、/和cls),如何获取两个输入字符串并执行运算