Javascript 使用';脚本引擎&x27;在不损失任何精度的情况下计算公式

Javascript 使用';脚本引擎&x27;在不损失任何精度的情况下计算公式,javascript,java,math,decimal,Javascript,Java,Math,Decimal,ScriptEngine的计算是否可以不丢失精度?我用它来计算java中的+、-和* ScriptEngineManager sem = new ScriptEngineManager(); ScriptEngine engine = sem.getEngineByExtension("js"); String calFormula = "5.08*8.99+3.23*4.221"; Object obj = engine.eval(calFormula); 它返回的是一个Doubl

ScriptEngine
的计算是否可以不丢失精度?我用它来计算java中的
+
-
*

 ScriptEngineManager sem = new ScriptEngineManager();
 ScriptEngine engine = sem.getEngineByExtension("js");
 String calFormula = "5.08*8.99+3.23*4.221";
 Object obj = engine.eval(calFormula); 
它返回的是一个
Double
。我想要像
BigDecimal
这样的东西


或者我必须自己实现吗?

不,你不必自己实现

只需要选择另一种脚本语言,因为JavaScript在
double
中完成所有运算

Groovy默认为
BigDecimal
,因此这似乎更合适