형식화 클래스
- java.text 패키지의 DecimalFormat(10진수 형식화), SimpleDateFormat(날짜 형식화)
- 숫자와 날짜를 원하는 형식으로 쉽게 출력 가능 (숫자, 날짜 > 형식 문자열)
- 형식 문자열에서 숫자와 날짜를 뽑아내는 기능 (형식 문자열 > 숫자, 날짜)
DecimalFormat
- 숫자를 형식화할 때 사용 (숫자 ➔ 형식 문자열)
double number = 1234567.89; // 10진수
DecimalFormat df = new DecimalFormat("#.#E0"); // 지수 형식
String result = df.format(number); // result = "1.2E6" (1.2 * 10^6)
- 특정 형식의 문자열을 숫자로 변환할 때도 사용 (형식 문자열 ➔ 숫자)
DecimalFormat df = new DecimalFormat("#,###.##"); // 문자열 형식
Number num = df.parse("1,234,567.89");
double d = num.doubleVaule(); // 1234567.89 숫자로 변경
* [참고] Integer.parseInt(), Float.parseFloat()...는 콤마가 포함된 문자열을 숫자로 변환 X
< 예제 >
SimpleDateFormat
- 날짜, 시간을 형식화할 때 사용 (날짜, 시간 ➔ 형식 문자열)
Date today = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
// mm: 시간의 분, MM: 날짜의 월
// 오늘 날짜를 yyyy-MM-dd 형태로 변환하여 반환
String result = df.format(today)
- 특정 형식의 문자열을 날짜, 시간으로 변환할 때도 사용 (형식 문자열➔ 날짜, 시간)
DateFormat df = new SimpleDateFormat("yyyy년 MM월 dd일");
DateFormat df2 = new SimpleDateFormat("yyyy / MM / dd일");
Date d = df.parse("2023년 12월 06일"); // 문자열을 Date로 변환
String result = df2.format(d);
< 예제 >