Java에서 두 자리를 소수점 두 자리로 반올림하는 방법

Payel Ganguly 2023년10월12일
  1. Math.round (double * 100.0)/100.0을 사용하여double을 소수점 두 자리로 반올림
  2. BigDecimal을 사용하여double을 소수점 두 자리로 반올림
  3. DecimalFormat을 사용하여double을 소수점 두 자리로 반올림
  4. Apache Common수학을 사용하여 double을 소수점 두 자리로 반올림
Java에서 두 자리를 소수점 두 자리로 반올림하는 방법

이전 튜토리얼 기사에서 자세한 예제와 함께 다양한 메소드를 사용하여 Java에서 ArrayArrayList로 변환하는 방법을 이해했습니다. 다양한 형태의 시나리오 분석을 통해 더 많은 유형의 Java 사용을 살펴 보겠습니다.

이 튜토리얼 기사에서는 Java를 사용하여 소수점 이하 두 자리를 반올림하는 방법에 대해 설명합니다. setScale()메소드,DecimalFormatApache Common 라이브러리를 사용하여Math.round(),BigDecimal과 같이 double 값을 소수점 두 자리로 반올림하는 방법에는 네 가지가 있습니다.

예를 통해 각 방법을 논의하겠습니다.

Math.round (double * 100.0)/100.0을 사용하여double을 소수점 두 자리로 반올림

Java에서Math.round()메소드는 주어진 숫자를 가장 가까운 정수로 반올림하는 데 사용됩니다. 이 기사에서는 double을 소수점 이하 2 자리로 반올림하는 방법을 배우기 때문에 Math.round()응용 프로그램에는 (double * 100.0) /100.0이 포함됩니다.

아래 예를 따르십시오.

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

출력:

Rounded Double value: 7435.99

BigDecimal을 사용하여double을 소수점 두 자리로 반올림

이런 식으로 먼저 doubleBigDecimal로 변환 한 다음 setScale()메서드를 사용하여 변환 된 BigDecimal을 소수점 이하 두 자리로 반올림 할 수 있습니다. 아래 예를 이해합시다.

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

출력:

Double value: 4312.186462
Rounded Double value: 4312.19

DecimalFormat을 사용하여double을 소수점 두 자리로 반올림

DecimalFormat을 사용하여 double값을 소수점 이하 두 자리로 반올림 할 수도 있습니다. 다음 예에서 논의하겠습니다.

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

출력:

Double value: 6482.236789
Rounded Double value: 6482.24

Apache Common수학을 사용하여 double을 소수점 두 자리로 반올림

Java의 특수한 종류의 수학 라이브러리는double을 소수점 이하 두 자리로 반올림하는 데 사용되며 이는Apache Common입니다. 다음 예에서 그 활용도에 대해 설명하겠습니다.

이 라이브러리 종속성을 Java 프로젝트 내의 xml 파일에 추가해야합니다.

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

이제 double을 소수점 이하 두 자리로 반올림하는 아파치 라이브러리 구현을 확인하겠습니다.

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

출력:

Rounded Double value: 9476.24

간단한 Java 응용 프로그램의 경우 처음 세 가지 방법을 따르는 것이 좋습니다.

관련 문장 - Java Double