\n 한 줄 띄움
\t 일정 간격 띄움
\" 쌍따옴표 출력
System.out.println("\"Hello,Java\"");
결과: "Hello,Java"
%d 정수
%f 실수
%d 문자
%s 문자열
순서: %[argument_index$][flags][width]conversion
%와 conversion 으로 무조건 있어야 함
"conversion": 표현 할 데이터의 타입으로, s(문자열), d(정수), x(16진수), o(8진수), f(실수)
ex) %s, %d, %x, %o, %f
ex) System.out.println(String.format("%s, %s", "KOREA", "JAPAN"));
들어갈 파라미터의 인덱스: 1부터 시작
아래를 보면 2를 각 각 추가했는데 2는 첫 번째 "KOREA"를 의미하기 때문에 출력 순서가 바뀐 것
ex) 길이를 10으로 지정 (width + argument_index 옵션)
System.out.println(String.format("%2$10s%1$10s", "KOREA", "JAPAN"));
JAPAN KOREA
[flags]는 [argument_index]와 [width]사이에 위치
'-' flag를 사용하면 출력되는 문자열이 왼쪽으로 정렬
'-' flag를 빼면 이전 예제와 같이 오른쪽으로 정렬
System.out.println(String.format("%-10s%-10s", "KOREA", "JAPAN"));
KOREA JAPAN
System.out.println(String.format("%10s%10s", "KOREA", "JAPAN"));
KOREA JAPAN
conversion앞에 위치하는 [width]를 사용한 샘플
// 길이를 10으로 지정 (width 옵션)
System.out.println(String.format("%10s%10s", "KOREA", "JAPAN"));
KOREA JAPAN
정수는 %뒤에 d를 붙여서 사용
System.out.println(String.format("%d, %d", 12345, 67890));
12345, 67890
System.out.println(String.format("%10d%10d", 12345, 67890));
12345 67890
System.out.println(String.format("%2$10d%1$10d", 12345, 67890));
67890 12345
System.out.println(String.format("%-10d%-10d", 12345, 67890));
12345 67890
0 flag를 사용해서 공백 부분은 0으로 채우기
// 0 flag는 정수나 실수를 대입할때만 사용가능하며 문자열 등에는 사용할 수 없음.
System.out.println(String.format("%010d%010d", 12345, 67890));
00000123450000067890
정수, 실수에 사용 가능한 몇가지 flag. + flag를 사용한 샘플
//부호를 표시하면서 남는 자리수는 0으로 채우는 샘플
System.out.println(String.format("%+10d%+10d", 100, -200));
+100 -200
'(' 를 사용하면 음수인 경우만 괄호가 사용
System.out.println(String.format("%(10d%(10d", 100, -200));
100 (200)
',' flag를 사용한 샘플
// ','를 사용하면 해당 국가에서 사용되는 기호로 숫자를 그룹지어 줌.
대부분 콤마가 사용됨.
System.out.println(String.format("%,10d%,10d", 10000, -20000));
10,000 -20,000
x를 사용하면 16진수를 출력
// 아래 샘플에서는 10진수 2047이 16진수로 변환되서 출력
System.out.println(String.format("%10x%10x", 2047, 2047));
7ff 7ff
X를 대문자로 사용하면 16진수도 대문자로 출력
System.out.println(String.format("%10X%10X", 2047, 2047));
7FF 7FF