公式表达式结果

oli*_*dev 3 java

在Java中,如果我有一个字符串:

String abc = "(5)*(2+2)/(2)";
Run Code Online (Sandbox Code Playgroud)

我怎么能得到结果abc = 10

Bor*_*vić 8

import javax.script.*;
public class EvalScript {
    public static void main(String[] args) throws Exception {
        // create a script engine manager
        ScriptEngineManager factory = new ScriptEngineManager();
        // create a JavaScript engine
        ScriptEngine engine = factory.getEngineByName("JavaScript");
        // evaluate JavaScript code from String
        Number number = (Number)engine.eval("(5)*(2+2)/(2)");
        System.out.println("abc = " + number);
    }
}
Run Code Online (Sandbox Code Playgroud)