Java 程式,將數學字串轉換為 int
要評估數學字串為 int,請在 Java 中使用 Nashorn JavaScript,即指令碼。Nashorn 喚起動態特性,它是在 Java 7 中引入的,可用於提升效能。
對於指令碼,請使用 ScriptEngineManager 類作為引擎
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
ScriptEngine scriptEngine = scriptEngineManager.getEngineByName("nashorn");現在,請使用 put() 在指令碼引擎的狀態中設定鍵值對
scriptEngine.put("one", 10);
scriptEngine.put("two", 50);
scriptEngine.put("three", 40);現在,這裡有數學字串。請使用 eval 進行評估
String strExp = "(one + two - three) == 20"; Object evalExp = scriptEngine.eval(strExp);
示例
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class Demo {
public static void main(String[] args) {
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
ScriptEngine scriptEngine = scriptEngineManager.getEngineByName("nashorn");
scriptEngine.put("one", 10);
scriptEngine.put("two", 50);
scriptEngine.put("three", 40);
try {
String strExp = "(one + two - three) == 20";
Object evalExp = scriptEngine.eval(strExp);
System.out.println("Is "+strExp + " ? " + evalExp);
} catch (ScriptException se) {
se.printStackTrace();
}
}
}輸出
Is (one + two - three) == 20 ? true
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP