Ciąg Java do równania matematycznego [duplikat]

To pytanie ma już odpowiedź tutaj:

Jak ocenić wyrażenie matematyczne podane w postaci ciągu? [Zamknięte 24 odpowiedzi

Muszę zaimplementować funkcjępublic int eval(String infix) {...} i kiedy używam tego w ten sposób:

eval("3+2*(4+5)") 

Muszę otrzymać 21.

Wyrażenie arytmetyczne może zawierać „+”, „*” i nawiasy.

Więc jak mogę przekonwertować to na równanie matematyczne?Nie mogę używać niestandardowych bibliotek.

UPDATE: Znaleziono rozwiązanie.

Jest dwukierunkowy: notacja polska i użycie ScriptEngine.

questionAnswers(3)

yourAnswerToTheQuestion