Bewerten Sie mathematische Ausdrücke in Java ganz einfach
Die Integration der dynamischen Formelauswertung in Ihre Java-Anwendungen kann deren Funktionalität erheblich verbessern. In diesem Artikel wird eine Lösung zur Auswertung mathematischer Ausdrücke untersucht, die von Benutzern bereitgestellt wird und die es Ihnen ermöglicht, problemlos mit komplexen Formeln wie „sin (x pi)/2 1“ zu arbeiten.
Die Herausforderung
Um einen bestimmten mathematischen Ausdruck auszuwerten, benötigen Sie ein Werkzeug, das die mathematische Syntax versteht und die erforderlichen Berechnungen durchführen kann. Zu diesem Zweck stehen mehrere Bibliotheken zur Verfügung.
Lösung: exp4j
Eine sehr empfehlenswerte Bibliothek ist exp4j, die den Shunting Yard-Algorithmus von Dijkstra für eine effiziente Ausdrucksauswertung verwendet. Seine Benutzerfreundlichkeit und geringe Größe (ca. 25 KB) machen es zur idealen Wahl.
Verwenden von exp4j
Um exp4j zu verwenden, erstellen Sie eine Berechenbare Objekt durch Bereitstellung des Ausdrucks als Zeichenfolge. Anschließend können Sie die Werte aller an der Formel beteiligten Variablen mithilfe der Methode withVariable festlegen. Rufen Sie abschließend die Methode calculate auf, um den Ausdruck auszuwerten. Hier ist ein Beispiel:
<code class="java">Calculable calc = new ExpressionBuilder("3 * sin(y) - 2 / (x - 2)") .withVariable("x", varX) .withVariable("y", varY) .build(); double result1 = calc.calculate();</code>
Für neuere Versionen von exp4j verwenden Sie die Methoden build und evaluate:
<code class="java">Expression calc = new ExpressionBuilder("3 * sin(y) - 2 / (x - 2)") .variable("x", x) .variable("y", y) .build(); double result1 = calc.evaluate();</code>
Benutzerdefinierte Funktionen
exp4j ermöglicht Ihnen auch die Definition benutzerdefinierter Funktionen, sodass Sie die Funktionen für spezifische Anforderungen erweitern können. Einzelheiten zur Implementierung benutzerdefinierter Funktionen finden Sie in der exp4j-Dokumentation.
Durch die Verwendung von exp4j können Sie mühelos mathematische Ausdrücke in Java auswerten und so die Vielseitigkeit Ihrer Anwendungen erhöhen.
Das obige ist der detaillierte Inhalt vonWie kann ich mathematische Ausdrücke in Java einfach auswerten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!