프로그래밍/자바(Java)
[ 자바 / JAVA ] 출력 format(printf)
후르트링
2021. 12. 13. 20:34
728x90
Java에서 출력할 때 System.out.printf() 메소드를 사용하여 특정 형식의 문자열을 출력할 수 있습니다.
C언어에서의 printf() 함수를 사용하는 것과 사용 법은 비슷합니다.
[ printf() ]
public PrintWriter printf(String format, Object... args)
System.out.printf("출력 format", 출력할 내용);
format | 설명 |
---|---|
%s | String 형식으로 출력 |
%d | 정수 형식으로 출력 |
%n | 줄바꿈 |
%f | float 형식으로 출력 |
%t | date, time 형식으로 출력 |
%o | 8진수 정수의 형식으로 출력 |
%x | 16진수 정수의 형식으로 출력 |
%b | boolean 형식으로 출력 |
%e | 지수 표현식의 형식으로 출력 |
[ 문자열 출력 예시 ]
%20s
처럼 숫자를 넣어 준다면 입력한 수만큼 공간을 할당합니다.- 숫자가 양수라면 문자는 오른쪽으로 정렬됩니다.
- 숫자가 음수라면 문자를 왼쪽으로 정렬됩니다.
Code:
String hello = "Hello";
String world = "World!";
System.out.printf("%s %s %n",hello,world);
System.out.printf("(%20s) %n",hello);
System.out.printf("(%-20s) %n",world);
Output:
hello world
( hello)
(world )
[ 정수, 실수 출력 예시 ]
%3.2f
는 소수점 이하 2자리만 출력하게 할 수 있습니다.
%03d
의 의미는 3자리를 차지하고, 만약에 수가 3자리가 되지 않는 다면 빈공간에 0을 채우는 것입니다.
Code:
System.out.printf("%f%n", 123.456);
System.out.printf("%5.2f%n", 123.456);
System.out.printf("%5.2e%n", 123.456);
System.out.printf("%03d %n",100);
System.out.printf("%03d %n",65);
Output:
123.456000
123.46
1.23e+02
100
065
[ 문자 출력 예시 ]
%c
는 소문자로 출력%C
는 대문자로 출력
Code:
System.out.printf("%c%n", 's');
System.out.printf("%C%n", 's');
Output:
s
S
[ 시간 출력 예시 ]
Date
객체는 시간 정보를 가지고 있습니다.
%tH
: Date의 Hour값을 출력%tM
: Date의 minute 값을 출력%tS
: Date의 second 값을 출력%tA
: Date의 요일%tB
: Date의 달(month)%tY
: Date의 연도(year)
Code:
Date date = new Date();
System.out.printf("hours: %tH, minutes: %tM, seconds: %tS %n",
date, date, date);
System.out.printf("%tA, %tB %tY %n", date, date, date);
Output:
hours: 19, minutes: 55, seconds: 26
Monday, December 2021