Wie man ein Doppel auf zwei Dezimalstellen in Java rundet

Payel Ganguly 12 Oktober 2023
  1. Runden eines double auf zwei Dezimalstellen unter Verwendung von Math.round(double*100.0)/100.0
  2. Runden eines double auf zwei Dezimalstellen unter Verwendung von BigDecimal
  3. Runden eines double auf zwei Dezimalstellen unter Verwendung des DecimalFormat
  4. Runden eines double auf zwei Dezimalstellen unter Verwendung von Apache Common Math
Wie man ein Doppel auf zwei Dezimalstellen in Java rundet

Im vorherigen Tutorial-Artikel haben wir verstanden, wie man ein Array in Java mit verschiedenen Methoden mit detaillierten Beispielen in ArrayList umwandelt. Wir werden uns weitere Arten der Java-Nutzung durch verschiedene Formen der Szenarioanalyse ansehen.

In diesem Tutorial-Artikel werden wir die Rundung eines Doppels auf zwei Dezimalstellen unter Verwendung von Java diskutieren. Es gibt vier Möglichkeiten, einen doppelten Wert auf zwei Dezimalstellen aufzurunden, wie z. B. Math.round(), BigDecimal unter Verwendung der setScale() Methode, DecimalFormat und Apache Common Bibliothek.

Lassen Sie uns jeden Weg anhand von Beispielen diskutieren.

Runden eines double auf zwei Dezimalstellen unter Verwendung von Math.round(double*100.0)/100.0

Die Methode Math.round() wird in Java verwendet, um eine gegebene Zahl auf ihre nächste ganze Zahl zu runden. Da wir in diesem Artikel das Runden eines Doppelten auf 2 Dezimalstellen lernen werden, wird die Anwendung von Math.round() die Methode (double*100.0)/100.0 beinhalten.

Folgen wir dem folgenden Beispiel.

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

Ausgabe:

Rounded Double value: 7435.99

Runden eines double auf zwei Dezimalstellen unter Verwendung von BigDecimal

Auf diese Weise können wir zunächst double in BigDecimal konvertieren und dann die Methode setScale() verwenden, um das konvertierte BigDecimal auf zwei Dezimalstellen zu runden. Lassen Sie uns das folgende Beispiel verstehen.

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

Ausgabe:

Double value: 4312.186462
Rounded Double value: 4312.19

Runden eines double auf zwei Dezimalstellen unter Verwendung des DecimalFormat

Wir können einen double Wert auch mit DecimalFormat auf zwei Dezimalstellen runden. Lassen Sie uns im folgenden Beispiel diskutieren.

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

Ausgabe:

Double value: 6482.236789
Rounded Double value: 6482.24

Runden eines double auf zwei Dezimalstellen unter Verwendung von Apache Common Math

Eine spezielle Art von Mathematik-Bibliothek in Java wird verwendet, um ein double auf zwei Dezimalstellen zu runden, was Apache Common ist. Lassen Sie uns ihre Verwendung im folgenden Beispiel diskutieren.

Wir müssen diese Bibliotheksabhängigkeit in einer xml-Datei innerhalb des Java-Projekts hinzufügen.

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

Nun wollen wir die Apache-Bibliotheksimplementierung auf die Rundung eines double auf zwei Dezimalstellen überprüfen.

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

Ausgabe:

Rounded Double value: 9476.24

Es wird empfohlen, die ersten drei Wege für einfache Java-Anwendungen zu befolgen.

Verwandter Artikel - Java Double