<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-math3</artifactId> <version>3.6.1</version> </dependency> import org.apache.commons.math3.analysis.function.*; public class MathParserExample { public static void main(String[] args) { String expression = "sin(x) + cos(x)"; FunctionParser parser = new FunctionParser(expression); double x = 0.5; double result = parser.evaluate(new double[]{x}); } } <dependency> <groupId>com.singularsys</groupId> <artifactId>jep</artifactId> <version>3.5</version> </dependency> import com.singularsys.jep.*; public class MathParserExample { public static void main(String[] args) throws ParseException { String expression = "sin(x) + cos(x)"; Jep jep = new Jep(); double x = 0.5; jep.addFunction("sin", new org.nfunk.jep.function.Sine()); jep.addFunction("cos", new org.nfunk.jep.function.Cosine()); jep.parse(expression); double result = (double) jep.evaluate(new Object[]{x}); } } <dependency> <groupId>net.objecthunter</groupId> <artifactId>expr4j</artifactId> <version>0.7.0</version> </dependency> import net.objecthunter.exp4j.*; public class MathParserExample { public static void main(String[] args) { String expression = "sin(x) + cos(x)"; ExpressionBuilder builder = new ExpressionBuilder(expression); double x = 0.5; builder.function("sin", Math::sin); builder.function("cos", Math::cos); Calculable calculable = builder.build(); double result = calculable.calculate("x", x); } }


上一篇:
下一篇:
切换中文