您可以使用
Javascript引擎:
scriptEngineManager mgr = new scriptEngineManager();scriptEngine engine = mgr.getEngineByName("Javascript");String expression = textField.getText();System.out.println(engine.eval(expression));编辑以允许所有方程式:
您现在所要做的就是允许 犯罪,cos,棕褐色 这样的事情:
scriptEngineManager mgr = new scriptEngineManager();scriptEngine engine = mgr.getEngineByName("Javascript");String expression = textField.getText();// Between here... expression = expression. replace("sin", "Math.sin"). replace("cos", "Math.cos"). replace("tan", "Math.tan"). replace("sqrt", "Math.sqrt"). replace("log", "Math.log"). replace("pi", "Math.PI");// And so on...System.out.println(engine.eval(foo));因此,您可以执行以下操作:
5 + 5 - 2 / 5 + sin(55) - log(20)
任何你想要的。



