Maison >Java >javaDidacticiel >Comment formater des flottants avec une précision décimale en Java ?

Comment formater des flottants avec une précision décimale en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-03 22:24:03972parcourir

How to Format Floats with Decimal Precision in Java?

Formatage des flottants avec une précision décimale

Le formatage des nombres à virgule flottante avec un nombre spécifique de décimales est une tâche courante dans divers scénarios de programmation. Pour y parvenir, une approche largement utilisée consiste à utiliser la classe BigDecimal en Java. Cependant, si le type de retour attendu est un float, l'utilisation de BigDecimal peut donner des résultats incorrects.

Dans l'exemple de code donné :

<code class="java">public static float Redondear(float pNumero, int pCantidadDecimales) {
    // the function is call with the values Redondear(625.3f, 2)
    BigDecimal value = new BigDecimal(pNumero);
    value = value.setScale(pCantidadDecimales, RoundingMode.HALF_EVEN); // here the value is correct (625.30)
    return value.floatValue(); // but here the values is 625.3
}</code>

Le problème survient lors de la reconversion de la valeur BigDecimal en un flotter. A cet effet, il est recommandé d'utiliser la méthode String.format comme suit :

String.format("%.2f", floatValue);

En spécifiant le nombre de décimales souhaité dans le spécificateur de format (%.2f), vous pouvez obtenir une chaîne formatée représentation de la valeur flottante avec la précision spécifiée. Notez que le type de retour est une chaîne dans ce cas.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn