Javaで次のようなBODMASルールを使用して電卓プログラムを作成できますか?
String valfromtextbox = "2(2*2)+5";
long total = Long.parseLong(valfromtextbox);
上記のようなことを行うことはできますか、それともこれを行うためにロジック全体を作成する必要があります。
ロジック全体を作成する必要がある場合は、ヒントを教えてください。
Java式言語(JEXL)を使用できます:
// Create or retrieve a JexlEngine
JexlEngine jexl = new JexlEngine();
// Create an expression object
String valfromtextbox = "2(2*2)+5";
Expression e = jexl.createExpression( valfromtextbox );
// Create a context and add data
JexlContext jc = new MapContext();
// Now evaluate the expression, getting the result
Object o = e.evaluate(jc);