Witam,
Pisze kalkulator i mam pytanko do bardziej doświadczonych kolegów. Czy jest możliwość żeby z łańcucha String "1+1+1" wyszła nam wartość 3? Kalkulatorów w javie ogólnie jest masa, ale większość z nich jest na tyle prosta że przyjmują tylko dwie wartości pól, następnie je sumują, dzielą itp. Problem pojawia się kiedy chcemy napisać ciąg działań, czyli 2+2+2 itp.
Rozwiązanie co prawda znalazłem, ale ciekawi mnie czy jest inny sposób, bo ten wymaga importowania biblioteki javax.script
public void actionPerformed(ActionEvent arg0)
{
String str = tf.getText();
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("JavaScript");
String foo = str;
try
{
tf.setText(String.valueOf(engine.eval(foo)));
}
catch (ScriptException e)
{
}
}