这是我目前的代码:
public class Evaluation {
String str1 = "1 + 2 + 3";
public static double evaluation(String str1){
if (str1 == null || str1 == ""){
return 0;
}
return 0;
}
}
我希望能够使用str1并评估放在那里的任何内容。
例如。 “1 * 3 * -2”应返回-6等,且必须采用
的形式数字,运算符,数字,运算符,数字
但我是一个非常新的程序员,我对如何实现这一目标一无所知。 谢谢你的帮助。
答案 0 :(得分:1)
尝试ScriptEngine
:
ScriptEngine engine = new ScriptEngineManager().getEngineByName("JavaScript");
String input = "1 + 2 + 3";
System.out.println(engine.eval(input)); //prints 6