IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Comment enlever l'exposant sur une valeur de type double


Sujet :

Langage Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 37
    Points
    37
    Par défaut Comment enlever l'exposant sur une valeur de type double
    Bonjour à tous,
    J'ai un petit souci, j'ai déclaré une valeur numérique de type double (représentant un montant). Lorsque la valeur atteint le milliard, elle s'affiche dans mon JTextBox avec un exposant (ex : 1E10 pour 1.000.000.000) j'aimerais savoir comment puis-je enlever le "E" et afficher mon montant tel quel ?

    Merci d'avance.

  2. #2
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 571
    Points : 15 538
    Points
    15 538
    Par défaut
    Pour un gérer des montants, je te déconseille fortement le type double, qui ne devrait a mon avis être utiliser que pour des calculs scientifiques par des gens qui sont bien conscient des problèmes inhérents a ce type.
    Tu peux notamment être surpris par des approximation pour certains calculs qui ne semblent pas être utiles à un humain qui compte en base 10 (car les flottants fonctionnent en binaire).

    Je te conseille très fortement d'utiliser la classe BigDecimal à la place de double.

  3. #3
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut Vive les Bigdecimal :)
    Bonjour,

    je ne saurais que confirmer ce que Uther en dit, tout simplement pour l'avoir tester.

    Voici un bout de code utilisant la méthode toPlainString() de la classe BigDecimal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    static void testToPlainStringBigDecimal() {
            System.out.println("testToPlainStringBigDecimal : ");
     
            BigDecimal bd1 = new BigDecimal("-5E+2");
            BigDecimal bd2 = new BigDecimal("5E-2");
            BigDecimal bd3 = new BigDecimal("-125.0000");
     
            System.out.println("-5E+2      : " + bd1.toPlainString()); // -500
            System.out.println("5E-2        : " + bd2.toPlainString()); // 0.05
            System.out.println("-125.0000 : " + bd3.toPlainString()); // -125.0000
        }
    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Enlever un espace sur une valeur
    Par souhail72 dans le forum Développement de jobs
    Réponses: 14
    Dernier message: 18/12/2013, 16h25
  2. Réponses: 6
    Dernier message: 20/12/2010, 15h10
  3. Réponses: 4
    Dernier message: 06/08/2010, 22h13
  4. Réponses: 0
    Dernier message: 24/07/2007, 00h03
  5. [VB.Net/Dataview] Comment gérer un filtre sur une colonne de type date ?
    Par silatchom dans le forum Accès aux données
    Réponses: 3
    Dernier message: 07/07/2006, 19h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo