java eval是甚么表达式都能计算的?

Python019

java eval是甚么表达式都能计算的?,第1张

eval()应当是javascript的函数,是把字符串转成表达式.通经常使用于动态产生表达式.不过不推荐使用,如果能用其它方法实现,就不要用,存在兼容问题,也有可能致使不可预测的结果.至于你说的甚么表达式能计算,经常使用的都没问题,不知道你要用到甚么?如果比较特殊,你可以写个小程序试试不就知道结果了.如果要在java中实现这个功能,要用1些特殊办法.不能直接使用.要末自己写函数,要末用第3方的API.由于这个方法不是java标准API中的.

有啊,脚本引擎

public class Test {

public static void main(String[] args) throws ScriptException {

ScriptEngineManager manager = new ScriptEngineManager()

ScriptEngine se = manager.getEngineByName("js")

String str = "1+2*(3+6)-5/2"

Double result =(Double) se.eval(str)

System.out.println(result)

}

}