Maison  >  Article  >  Java  >  Comment puis-je évaluer facilement des expressions mathématiques en Java ?

Comment puis-je évaluer facilement des expressions mathématiques en Java ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-29 19:26:02735parcourir

How Can I Easily Evaluate Mathematical Expressions in Java?

Évaluez facilement des expressions mathématiques en Java

L'intégration de l'évaluation dynamique de formules dans vos applications Java peut considérablement améliorer leurs fonctionnalités. Cet article explore une solution pour évaluer les expressions mathématiques fournies par les utilisateurs, vous permettant de travailler facilement avec des formules complexes comme "sin (x pi)/2 1".

Le défi

Pour évaluer une expression mathématique donnée, vous avez besoin d'un outil qui comprend la syntaxe mathématique et peut effectuer les calculs nécessaires. Il existe plusieurs bibliothèques disponibles à cet effet.

Solution : exp4j

Une bibliothèque hautement recommandée est exp4j, qui utilise l'algorithme Shunting Yard de Dijkstra pour une évaluation efficace des expressions. Sa facilité d'utilisation et sa petite taille (environ 25 Ko) en font un choix idéal.

Utiliser exp4j

Pour utiliser exp4j, créez un Calculable objet en fournissant l’expression sous forme de chaîne. Vous pouvez ensuite définir les valeurs de toutes les variables impliquées dans la formule à l'aide de la méthode withVariable. Enfin, appelez la méthode calculate pour évaluer l'expression. Voici un exemple :

<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>

Pour les versions plus récentes d'exp4j, utilisez les méthodes build et 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>

Fonctions personnalisées

exp4j vous permet également de définir des fonctions personnalisées, vous permettant d'étendre ses capacités pour des exigences spécifiques. Reportez-vous à la documentation exp4j pour plus de détails sur l'implémentation de fonctions personnalisées.

En utilisant exp4j, vous pouvez évaluer sans effort des expressions mathématiques en Java, améliorant ainsi la polyvalence de vos applications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn