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 :

Java BigDecimal to Integer


Sujet :

Langage Java

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 93
    Par défaut Java BigDecimal to Integer
    Bonjour,

    J'ai une question concernant un nombre BigDecimal.
    Le nombre est par exemple 5483,238 (je sais que c'est petit pour un BigDecimal mais c'est une contrainte qui m'est imposée) et il me le faudrait sous forme de 2 entiers.
    Le premier entier serait la partie entiere du nombre 5483.
    Le second entier serait la partie décimale du nombre en 2 digits 24.

    J'arrive sans problème à obtenir le premier entier en utilisant BigDecimal.intValue(), par contre je tourne en rond pour le second.

    Pouvez-vous m'aider ?

    Merci d'avance,
    Christian

    Après avoir continué à chercher j'ai fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    BigDecimal valueBD = new BigDecimal("-124.9365");
    int euro = valueBD.intValue();
    BigDecimal decimalPartBD = valueBD.subtract(BigDecimal.valueOf(euro)).setScale(2, BigDecimal.ROUND_UP);
    int cent = BigDecimal.valueOf(100).multiply(decimalPartBD).intValue();
    Qu'en pensez-vous, est ce cohérent ?

  2. #2
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Oui, cela marche je pense ; la question risque d'être : à quoi cela te servira-t-il ?

    ... je ne vois pas pourquoi tu transformes des BigDecimal en entier, puisque normalement, toutes les manipulations utiles aux nombres décimaux sont justement incluses dans le BigDecimal.

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2003
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 93
    Par défaut
    Bonjour Gifffftane,

    Merci pour ta réponse, en fait je dois utiliser ceci pour une application bien spécifique. Le but est te traduire le nombre en valeur à lire par le biais de fichiers audio, donc je dois décomposer ma valeur en par exemple 1000.wav, 900.wav, 24.wav virgule.wav, 99.wav pour lire 1924,99

    C'est la raison pour laquelle j'ai choisi de traiter les deux parties du nombre comme des entiers.

    Cependant si tu as un idée plus simple, je suis ouvert.

    Merci d'avance,
    Christian

Discussions similaires

  1. Problème Java/SQL : Incorrect integer value
    Par phantomatiik dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 22/03/2012, 14h44
  2. BigDecimal et Integer dans un formulaire
    Par mLk92 dans le forum Langage
    Réponses: 2
    Dernier message: 04/03/2008, 12h09
  3. java.lang.Integer avec Axis1.4
    Par clement42 dans le forum Services Web
    Réponses: 3
    Dernier message: 20/07/2007, 14h49
  4. Réponses: 1
    Dernier message: 01/05/2007, 13h48
  5. Combien de types Integer existe t il en java?
    Par jlassiramzy dans le forum Langage
    Réponses: 3
    Dernier message: 28/02/2007, 04h39

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