輕鬆計算Java 中的數學表達式
將動態公式計算合併到您的Java 應用程式中可以大大增強其功能。本文探討了一種評估使用者提供的數學表達式的解決方案,讓您可以輕鬆使用「sin (x pi)/2 1」等複雜公式。
挑戰
要計算給定的數學表達式,您需要一個能夠理解數學語法並可以執行必要計算的工具。有多個庫可用於此目的。
解:exp4j
強烈建議的一個函式庫是 exp4j,它採用 Dijkstra 的 Shunting Yard 演算法進行高效率的表達式評估。它的易用性和小尺寸(大約 25KB)使其成為理想的選擇。
使用 exp4j
要使用 exp4j,請建立一個 可計算對象,透過將表達式提供為字串。然後,您可以使用 withVariable 方法來設定公式中涉及的任何變數的值。最後,呼叫 calculate 方法來計算表達式。下面是一個示例:
<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>
對於較新版本的exp4j,請使用build 和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>
自訂函數
exp4j 還允許您定義自訂函數,使您能夠根據特定要求擴展其功能。有關自訂函數實現的詳細信息,請參閱 exp4j 文件。
透過使用 exp4j,您可以輕鬆地計算 Java 中的數學表達式,從而增強應用程式的多功能性。
以上是如何輕鬆計算 Java 中的數學表達式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!