java - 将对象转换为双 Scriptengine

标签 java object double valueconverter scriptengine

我使用 java 脚本引擎来评估我拥有的字符串的数学。

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;
  }
}

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

请描述一下我对编程还很陌生。

提前致谢。

最佳答案

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

tempDouble = Double.parseDouble(engine.eval(funktion).toString());

关于java - 将对象转换为双 Scriptengine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19868657/

相关文章:

java - Webflux订阅者

java - 通过 Selenium 直接按 "F12"键

json - 如何在json swift中解析时保持原始 double 值?

java - 为什么在 Java 中对方法计时时使用 finally block ?

php多线程变量范围共享问题

java - 将客户端对象发送到服务器时出错

java - 为什么没有 java.lang.Array 类?如果java数组是一个Object,它不应该扩展Object吗?

检查 double 的条件是一个整数不起作用

java - 可空双

java - 空指针无处不在,因为数据突然变得稀疏