Arrotondare un doppio a due cifre decimali in Java

Payel Ganguly 12 ottobre 2023
  1. Arrotondare un double a due cifre decimali usando Math.round(double*100.0)/100.0
  2. Arrotondamento da un double a due cifre decimali utilizzando BigDecimal
  3. Arrotondare un double a due cifre decimali utilizzando DecimalFormat
  4. Round di un double a due cifre decimali utilizzando la matematica Apache Common
Arrotondare un doppio a due cifre decimali in Java

Nel precedente articolo del tutorial, abbiamo capito come convertire un Array in ArrayList in Java utilizzando vari metodi con esempi dettagliati. Esamineremo più tipi di utilizzo di Java attraverso diverse forme di analisi dello scenario.

In questo articolo del tutorial, discuteremo dell’arrotondamento di un doppio a due cifre decimali utilizzando Java. Ci sono quattro modi per arrotondare un valore doppio a due cifre decimali come Math.round(), BigDecimal usando il metodo setScale(), DecimalFormat e la libreria Apache Common.

Cerchiamo di discutere in ogni modo attraverso esempi.

Arrotondare un double a due cifre decimali usando Math.round(double*100.0)/100.0

Il metodo Math.round() viene utilizzato in Java per arrotondare un dato numero al numero intero più vicino. Poiché in questo articolo impareremo l’arrotondamento di un double a 2 decimali, l’applicazione di Math.round() includerà (double*100.0)/100.0.

Seguiamo l’esempio seguente.

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);
  }
}

Produzione:

Rounded Double value: 7435.99

Arrotondamento da un double a due cifre decimali utilizzando BigDecimal

In questo modo, possiamo prima convertire double in BigDecimal e poi usare il metodo setScale() per arrotondare il BigDecimal convertito a due cifre decimali. Cerchiamo di capire l’esempio seguente.

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);
  }
}

Produzione:

Double value: 4312.186462
Rounded Double value: 4312.19

Arrotondare un double a due cifre decimali utilizzando DecimalFormat

Possiamo anche arrotondare un valore double a due cifre decimali usando DecimalFormat. Parliamo nel seguente esempio.

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));
  }
}

Produzione:

Double value: 6482.236789
Rounded Double value: 6482.24

Round di un double a due cifre decimali utilizzando la matematica Apache Common

Un tipo speciale di libreria matematica in Java viene utilizzato per arrotondare un double a due cifre decimali, che è Apache Common. Parliamo del suo utilizzo nel seguente esempio.

Dobbiamo aggiungere questa dipendenza dalla libreria in un file xml all’interno del progetto Java.

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

Ora controlliamo l’implementazione della libreria Apache per arrotondare un double a due cifre decimali.

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);
  }
}

Produzione:

Rounded Double value: 9476.24

Si consiglia di seguire i primi tre modi per semplici applicazioni Java.

Articolo correlato - Java Double