Problème d'addition en java
jpf40200
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
Bonjour à tous
Afin d'effectuer des calculs sur des variables, j'utilise cette syntaxe :
var T4=new java.lang.Float((T1*T2));
manager.getResourceManager().setValueLocally(resource,"Total",T4,user);
Si je veux faire une division ((T1/T2));
ça fonctionne
En revanche ((T1+T2));
provoque :
numberformatexception multiple points
Quelqu'un a la solution ?
Bonjour à tous
Afin d'effectuer des calculs sur des variables, j'utilise cette syntaxe :
var T4=new java.lang.Float((T1*T2));
manager.getResourceManager().setValueLocally(resource,"Total",T4,user);
Si je veux faire une division ((T1/T2));
ça fonctionne
En revanche ((T1+T2));
provoque :
numberformatexception multiple points
Quelqu'un a la solution ?
1 réponse
-
var T4 : ne confondrais-tu pas Java et JavaScript ?
Puisqu'il n'y a pas vraiment de typage en JavaScript, si tu as T1 = "1.2", et T2="3.4", il est évident que les opérateur *, - et / s'appliquent à des valeurs de type nombre. En revanche l'opérateur + qui peut être appliqué à des nombres ou a des chaines c'est plus ambiguë et en l'occurrence ici il est appliqué en considérant T1 et T2 comme des chaînes de caractères en faisant leur concaténation on a donc T1+T2="1.23.4" qui ne représente plus un nombre et qui génère le message d'erreur assez explicite : NumberFormatException multiple points puisque tu as deux virgules quand on en attend au plus une...
Pour être correct il faut donc appliquer l'opérateur + à des nombres et non pas à des chaînes de caractères c'est à dire calculer var T4 = new Float(T1)+new Float(T2);