Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
10 Июл 2023
2 мин
880

Вычисление математических выражений из строки в Java

Одной из распространенных задач, с которыми можно столкнуться при работе с Java, является необходимость вычисления математических выражений, представленных

Одной из распространенных задач, с которыми можно столкнуться при работе с Java, является необходимость вычисления математических выражений, представленных в виде строки. Представьте себе ситуацию, когда входные данные представляют собой строку, содержащую математическое выражение, например, "7+5*2". Цель — вычислить это выражение и получить результат.

В этой статье будет представлен один из способов решения данной задачи.

import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.ScriptException;

public class Main {
    public static void main(String[] args) throws ScriptException {
        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("JavaScript");

        String expression = "7+5*2";
        System.out.println(engine.eval(expression));
    }
}

В этом примере используется ScriptEngineManager и ScriptEngine, которые являются частью Java Scripting API. Этот API позволяет встроить в Java код другие языки сценариев, в том числе и JavaScript.

Через этот API можно запустить JavaScript код прямо внутри Java приложения. В данном случае JavaScript используется для вычисления математического выражения из строки.

Сначала создается экземпляр ScriptEngineManager, который управляет коллекцией движков сценариев. Затем с помощью метода getEngineByName получается экземпляр ScriptEngine, который представляет собой движок JavaScript.

Затем этот движок используется для вычисления математического выражения с помощью метода eval.

Этот подход позволяет избежать большого количества условных операторов в коде, что делает его более читаемым и поддерживаемым.

Однако стоит помнить, что использование JavaScript движка может привести к ухудшению производительности, поэтому этот подход следует использовать с осторожностью и только в тех случаях, когда производительность не является критически важной.

Добавить комментарий