string.format()
format에 지정할 수 있는 주요 서식
숫자 / 문자 변환
날짜 / 시간 변환
예시
import java.time.LocalDateTime;
public class Main {
public static void main(String[] args) {
String str = "StringFormatExample";
boolean bool = true;
int n = 1234;
LocalDateTime now = LocalDateTime.now();
String result = String.format("문자열 서식: %s, %S", str, str);
System.out.println(result);
result = String.format("boolean 서식 문자열: %B, %b", bool, bool);
System.out.println(result);
result = String.format("정수 서식: %d, %o, %x, %05d", n, n, n, n);
System.out.println(result); // %05d → 5자리수, 공백을 0으로 채움
result = String.format("부동 소수점 서식: %4$e, %3$f, %2$g, %1$a", 1234.01, 1234.02, 1234.03, 1234.04);
System.out.println(result); // %숫자$ 로 절대 인수 인덱스 지정
result = String.format("날짜/시간 서식: %tY년 %<tm월 %<td일 %<tH시 %<tM분 %<tS초", now);
System.out.println(result); // $< 로 상대 인덱스 지정하여 직전의 인수와 같은 인덱스를 이용
}
}
결과
문자열 서식: StringFormatExample, STRINGFORMATEXAMPLE
boolean 서식 문자열: TRUE, true
정수 서식: 1234, 2322, 4d2, 01234
부동 소수점 서식: 1.234040e+03, 1234.030000, 1234.02, 0x1.3480a3d70a3d7p10
날짜/시간 서식: 2021년 04월 09일 16시 21분 33초