是否可以将带有数学表达式的字符串转换为如下代码:
有一个 String 类型的变量,其初始化如下:x*x*x
.
代码中有一些方法可以像这样工作:
public double someMethod(String s)
{
return (число, полученное вычислением выражения, которое содержится в вышеуказанной переменной);
}
如果这是可能的,如何实施?
是否可以将带有数学表达式的字符串转换为如下代码:
有一个 String 类型的变量,其初始化如下:x*x*x
.
代码中有一些方法可以像这样工作:
public double someMethod(String s)
{
return (число, полученное вычислением выражения, которое содержится в вышеуказанной переменной);
}
如果这是可能的,如何实施?
在 Java 8..11 中,可以使用 Nashorn JavaScript 引擎,尽管它在 Java 11 中已被弃用并在 Java 15 中被永久删除。
该引擎支持
eval
在 Java 中执行 JavaScript 的著名函数,那么所需的方法可能如下所示:或者您甚至可以在 javascript 中定义一个函数并在其调用中替换该值
x
:结果: