형식화 클래스?
: java.text 패키지의 DecimalFormat(십진수), SimpleDateFormat(날짜형식화)
1) 숫자와 날짜를 원하는 형식으로 쉽게 출력 가능(숫자, 날짜 → 형식 문자열)
double number = 1234567.89; // DecimalFormat df = new DecimalFormat("#.#E0); // ("#.#E0) : 지수 형식 String result = df.format(number); // result = "1.2E6"
↳ 10진수를 지수형식으로 표현하고 싶을 때
2) 형식 문자열에서 숫자와 날짜를 뽑아내는 기능(형식 문자열 → 숫자, 날짜)
DecimalFormat df = new DecimalFormat("#,###.##"); //문자열이 어떤 형식인지 알려줌 Number num = df.parse("1,234,567.89); // 문자열, parse를 통해 넘버형식으로 바꿈 double d = num.doubleValue(); // 1234567.89, 숫자로 바꿔줌
↳ Number : 모든 숫자 래퍼클래스의 최고 조상
↳ <참고> Integer.parseInt()는 콤마(,)가 포함된 문자열을 숫자로 변환 못함!
⇒ 외울 필요는 없음. 필요할 때 가져다가 쓰면 됨
DecimalFormat
1) 숫자(10진수)를 형식화할 때 사용(숫자 → 형식 문자열)
↳ 단순히 "" 빈문자열을 더해줘서 문자열로 만들어줘도 되지만, 훨씬 더 다양한 형식으로 숫자를 변환할 수 있음.
2) 특정 형식의 문자열을 숫자로 변환할 때도 사용(형식 문자열 → 숫자)
출처
- 자바의 정석 기초편: ch 10- 9~12