Java, nombre de chiffre apres la virgule
Résolu
varfendell
Messages postés
3259
Date d'inscription
Statut
Membre
Dernière intervention
-
danimo -
danimo -
Bonjour,
J'affiche des entier de type double, et je voudrais les afficher avec un nombre de chiffre fixe après la virgule:
par exemple 0.800000011920929 deviendrait 0.8 et 0.22210646369331533 deviendrait 0.222106
je ne sait quelle méthode utilisé et mes recherches n'ont pour l'instant rien données.
--
La vérité appartient à ceux qui la cherchent et non point à ceux qui prétendent la détenir.
(n'oubliez pas de mettre résolu si vous avez trouvé votre bonheur: pensez aux autres^^')
J'affiche des entier de type double, et je voudrais les afficher avec un nombre de chiffre fixe après la virgule:
par exemple 0.800000011920929 deviendrait 0.8 et 0.22210646369331533 deviendrait 0.222106
je ne sait quelle méthode utilisé et mes recherches n'ont pour l'instant rien données.
--
La vérité appartient à ceux qui la cherchent et non point à ceux qui prétendent la détenir.
(n'oubliez pas de mettre résolu si vous avez trouvé votre bonheur: pensez aux autres^^')
Configuration: windows viste, firefox
2 réponses
-
Salut,
En php la syntaxe est de type :
$valeur = 0.22210646369331533;
$valeur_arrondie = round($valeur, 5)
ce qui te renvoie $valeur_arrondie = 0.22211
En java ça doit pas être bien loin de ça je pense.
-
Salut,
Par exemple avec cette petite méthode:
public static double floor(double a, int decimales, double plus) { double p = Math.pow(10.0, decimales); //return Math.floor((a*p) + 0.5) / p; // avec arrondi éventuel (sans arrondi >>>> + 0.0 return Math.floor((a*p) + plus) / p; }
Appels de la méthode:
double plus = 0.0d; int decimales = 2; double a = 0.0d; //ton exemple 0.800000011920929 deviendrait 0.8 // sans arrondi: a = floor(0.800000011920929, decimales, plus); System.out.println("a = " + a); //et 0.800000011920929 deviendrait 0.8 // avec arrondi éventuel: plus = 0.5d; a = floor(0.800000011920929, decimales, plus); // reste a 0.8 System.out.println("a = " + a); //et ton exemple 0.22210646369331533 deviendrait 0.222106 // sans arrondi: plus = 0.0d; decimales = 6; a = floor(0.22210646369331533, decimales, plus); // 0.222106 System.out.println("a = " + a); //et 0.22210646369331533 deviendrait 0.222106 // avec arrondi éventuel: plus = 0.5d; a = floor(0.22210646369331533, decimales, plus); // reste a 0.222106 System.out.println("a = " + a);
Cordialement,
Dan