0

我使用 java scriptengine 来评估我拥有的字符串的数学。

import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;

public class GraphYPosAlg 
{
  public static double YPos(String funktion) {
    Double tempDouble;
    ScriptEngineManager StringToInt = new ScriptEngineManager();
    ScriptEngine engine = StringToInt.getEngineByName("JavaScript");
    tempDouble = engine.eval(funktion);
    return tempDouble;
  }
}

我收到错误“必需:java.lang.Double,找到:java.lang.Object”我需要转换 engine.eval(funktion); 成双,但如何?!?!?!?

请描述很多我对编程很陌生的东西。

提前致谢。

4

1 回答 1

2

您可以在对象上调用该toString()方法并从中创建一个double

tempDouble = Double.parseDouble(engine.eval(funktion).toString());
于 2013-11-08T21:26:25.733 回答