Problème d'addition en java
jpf40200
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
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 ?
A voir également:
- Problème d'addition en java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Addition excel - Guide
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
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);
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);
org.mozilla.javascript.EcmaError: ReferenceError: "Float" n'est pas défini (Script#86)
org.mozilla.javascript.EcmaError: TypeError: [JavaPackage java.lang.util.Float] n'est pas une fonction, est un object (Script#86)
Essaye de décomposer peut être avec var F1=new Float(T1), F2=new Float(T2), T4=F1+F2
com.axemble.vdp.exceptions.TypeMismatchException
:-(