Java

Java, String.format() 소수점 자릿수 변경 / new DecimalFormat().format() 천단위마다 콤마(,)

greenyellow-s 2024. 7. 5. 20:31

2024-7-4 네이버 클라우드

 

String.format()

 

값을 원하는 형식으로 설정하는 메서드

static에 포함되어 있는 메서드라서 public static void main(String[] args) 이 있다면 import 없이도 사용 가능


String.format(" %[전체 자리수] . [소수점 이하 자릿수] [형식] ", 구하는 값)

* 전체 자리수는 생략 가능

* 전체 자리수는 소수점(.)도 포함

 

형식 종류

10진수 : %d
문자열 : %s
실수 : %f
날짜시간 : %t
유니코드 문자 : %c
8진수 : %o

16진수 : %x

 

double div = 5.2548623 

System.out.println(String.format("%4.2f",div));
System.out.println(String.format("%.2f",div));

 

[실행결과]

5.25

5.25

 

 

new DecimalFormat().format()

 

NumberFormat을 상속받는 DecimalFormat클래스를 이용해 천단위마다 구분선을 넣거나, 소숫점 몇자리까지 포함할 것인지 정할 수 있다.

 

패턴 의미
0 10진수, 빈자리는 0으로 채움
# 10진주, 빈자리는 채우지 X
. 소수점 표시
, 단위 구분 기호 표시
+,- 음수, 양수 표시
E 지수 문자
; 양수와 음수 패턴을 모두 사용할 경우 패턴 구분자
% 100을 곱하고 %를 붙임
\u00A4 통화 표시 \ 붙임

 

** 패키지를 불러와야 된다.

import java.text.DecimalFormat;

 

package basic;

import java.text.DecimalFormat;

public class Compute {
	public static void main(String[] args) {

        int mul = 15200000;

        System.out.println(new DecimalFormat().format(mul));
	}
}

 

[실행결과]

15,200,000