Comment arrondir un double à deux décimales en Java

Payel Ganguly 12 octobre 2023
  1. Ronde d’un double à deux décimales en utilisant Math.round(double*100.0)/100.0
  2. Arrondissement d’un double à deux décimales en utilisant BigDecimal
  3. Arrondissement d’un double à deux décimales en utilisant DecimalFormat
  4. Arrondissement d’une valeur double à deux décimales en utilisant Apache Common Math
Comment arrondir un double à deux décimales en Java

Dans l’article précédent du tutoriel, nous avons compris comment convertir un tableau en ArrayList en Java en utilisant différentes méthodes avec des exemples détaillés. Nous examinerons d’autres types d’utilisation de Java à travers différentes formes d’analyse de scénarios.

Dans ce tutoriel, nous aborderons l’arrondi d’un double à deux décimales en utilisant Java. Il existe quatre façons d’arrondir une double valeur à deux décimales, comme Math.round(), BigDecimal en utilisant la méthode setScale(), DecimalFormat et la bibliothèque Apache Common.

Examinons chaque méthode à travers des exemples.

Ronde d’un double à deux décimales en utilisant Math.round(double*100.0)/100.0

La méthode Math.round() est utilisée en Java pour arrondir un nombre donné à son entier le plus proche. Puisque dans cet article, nous apprendrons à arrondir un double à deux décimales, l’application de Math.round() inclura (double*100.0)/100.0.

Suivons l’exemple ci-dessous.

import java.io.*;
import java.lang.*;
import java.util.*;

public class Main {
  public static void main(String[] args) {
    double d = 7435.9876;
    double roundDbl = Math.round(d * 100.0) / 100.0;
    System.out.println("Rounded Double value: " + roundDbl);
  }
}

Production:

Rounded Double value: 7435.99

Arrondissement d’un double à deux décimales en utilisant BigDecimal

De cette façon, nous pouvons d’abord convertir le double en BigDecimal et ensuite utiliser la méthode setScale() pour arrondir le BigDecimal converti à deux décimales. Comprenons l’exemple ci-dessous.

import java.io.*;
import java.lang.*;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;

public class Main {
  public static void main(String[] args) {
    double val1 = 4312.186462;
    System.out.println("Double value: " + val1);

    BigDecimal bd = new BigDecimal(val1).setScale(2, RoundingMode.HALF_UP);
    double val2 = bd.doubleValue();
    System.out.println("Rounded Double value: " + val2);
  }
}

Production:

Double value: 4312.186462
Rounded Double value: 4312.19

Arrondissement d’un double à deux décimales en utilisant DecimalFormat

Nous pouvons également arrondir une valeur double à deux décimales en utilisant DecimalFormat. Examinons l’exemple suivant.

import java.io.*;
import java.lang.*;
import java.text.DecimalFormat;
import java.util.*;

public class Main {
  public static void main(String[] args) {
    double val1 = 6482.236789;
    System.out.println("Double value: " + val1);

    DecimalFormat df = new DecimalFormat("###.##");
    System.out.println("Rounded Double value (DecimalFormat): " + df.format(val1));
  }
}

Production:

Double value : 6482.236789 Rounded Double value : 6482.24

Arrondissement d’une valeur double à deux décimales en utilisant Apache Common Math

Un type spécial de bibliothèque mathématique en Java est utilisé pour arrondir un double à deux décimales, ce qui est Apache Common. Examinons son utilisation dans l’exemple suivant.

Nous devons ajouter cette dépendance de bibliothèque dans un fichier xml au sein du projet java.

<dependency>
    <groudId>org.apache.commons</groudId>
    <artifactId>commons-math3</artifactId> 
    <version>3.6.1</version>
</dependency>

Maintenant, vérifions l’implémentation de la bibliothèque apache pour arrondir un double à deux décimales.

import java.io.*;
import java.lang.*;
import java.util.*;
import org.apache.commons.math3.util.Precision;

public class Main {
  public static void main(String[] args) {
    double input = 9476.2351;
    double roundedDbl = Precision.round(input, 2);
    System.out.println("Rounded Double value: " + roundedDbl);
  }
}

Production:

Rounded Double value: 9476.24

Il est recommandé de suivre les trois premiers chemins pour les applications java simples.

Article connexe - Java Double