반응형
DecimalFormat 클래스
자바에서는 숫자의 Format을 변경할 수 있는 클래스를 제공하는데,
NumberFormat을 상속받는 DecimalFormat클래스를 이용해 천자리마다 구분선을 넣는다던가, 소숫점 몇자리까지 포함할 것인지 정할 수 있습니다.
패턴 | 의미 |
0 | 10진수, 빈자리는 0으로 채운다. |
# | 10진주, 빈자리는 채우지 않는다. |
. | 소수점 표시 |
, | 단위 구분 기호 표시 |
+, - | 음수, 양수 표시 |
E | 지수 문자 |
; | 양수와 음수 패턴을 모두 사용할 경우 패턴 구분자 |
% | 100을 곱하고 %를 붙인다. |
\u00A4 | 통화 표시 \을 붙인다. |
예시 코드
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Locale;
public class Main {
public static void main(String[] args) {
double n = 123.456;
// 0 패턴 : 빈자리는 0으로 채운다.
DecimalFormat df = new DecimalFormat("0");
System.out.println(df.format(n)); // 출력값 : 123
// ; 패턴 : 음수 양수 둘다 표시
df = new DecimalFormat("+0.0; -0.0");
System.out.println(df.format(n)); // 출력값 : +123.5
// + or - 패턴 : 음수 또는 양수 표시
df = new DecimalFormat("-000000.00000");
System.out.println(df.format(n)); // 출력값 : -000123.45600
// # 패턴 : 0과 달리 빈자리를 채우지 않는다.
df = new DecimalFormat("###########");
System.out.println(df.format(n)); // 출력값 : 123
// . 패턴 : 소수점 표시
df = new DecimalFormat("######.#####");
System.out.println(df.format(n)); // 출력값 : 123.456
// , 패턴 : 단위 구분 기호 표시 ( 천자리 구분 )
df = new DecimalFormat("#,###.00000");
System.out.println(df.format(n)); // 출력값 : 123.45600
// % 패턴 : 100을 곱한 후 문자에 %를 붙인다.
df = new DecimalFormat("#.##%");
System.out.println(df.format(n)); // 출력값 : 12345.6%
// \u00A4 패턴 : 통화표시 ₩을 붙인다.
df = new DecimalFormat("\u00A4####.##");
System.out.println(df.format(n)); // 출력값 : ₩123.46
/*
* NumberFormat을 이용하여 통화표시를 지정
* Locale을 사용하여 국가 지정시 해당 국가의 통화기호 및 자리수 구분까지 된다.
*/
NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.KOREA);
// 소수점 2자리까지 지정
nf.setMaximumFractionDigits(2);
System.out.println(nf.format(n)); // 출력값 : ₩123.46
}
}
참고자료
https://jamesdreaming.tistory.com/203
https://all-record.tistory.com/192
반응형
'◼ JAVA' 카테고리의 다른 글
[Java/자바] Join과 Split을 이용한 문자열 제어 (5) | 2022.12.12 |
---|---|
[Java/자바] Map에서 value값으로 key찾기 (0) | 2022.12.06 |
[Java/자바] map - getOrDefault의 활용 (0) | 2022.12.05 |
[Java/자바] List와 String(문자열, 배열)을 서로 변환하는 법 (0) | 2022.12.04 |
[Java/자바] 정규식(Regular Expression) 사용법 총정리 (2) | 2022.11.28 |