표준 입력 장치는 키보드, 마우스 등을 말하고, 표준 출력 장치는 모니터, 프린터 등을 말한다.
표준 출력 장치에 출력하기 위한 클래스가 java.lang.System 클래스이다.
java.lang.System.out : 표준 출력
java.lang.System.in : 표준 입력
java.lang.System 에서 java.lang. 을 생략하여 System.out.함수호출() 을 하게 된다.
print()
기능 : 문자열로 출력
매개변수 : Object
리턴값 : 없음
println()
기능 : 문자열로 출력 + \n(개행)
매개변수 : Object
리턴값 : 없음
printf()
기능 : 원하는 형식의 문자열로 출력
매개변수 : 문자열, Object...
리턴값 : 없음
String name = "이지현";
System.out.printf("제 이름은 %s입니다.", name) // 제 이름은 이지현입니다.
- String : %s
- char : %c
- 정수 : %d
- 실수 : %f (소수점 6자리까지 출력)
- boolean : %b
- 날짜 관련
- 년 : tY
- 월 : tm
- 일 : te
%[argument_index$][ flags ][width][.precision]conversion %[ 1$ ][0,#,(,,][ 10s ][ 정밀도 ] d
String name = "이지현";
System.out.printf("%s", name); // 이지현
System.out.printf("[%s]", name); // [이지현]
// 10자리를 확보하고 우측정렬
System.out.printf("[%10s]", name); // [ 이지현]
// 10자리를 확보하고 좌측정렬
System.out.printf("[%-10s]", name); // [이지현 ]
String message = "천방지축 어리둥절 빙글빙글 돌아가는 짱구의 하루";
System.out.printf("%.4s", message); // 천방지축
System.out.printf("%.4s...", message); // 천방지축...
int n = 50;
// 10진수
System.out.printf("%d", n); // 50
// 8진수
System.out.printf("%o", n); // 62
System.out.printf("%#o", n); // 062
// 16진수
System.out.printf("%x", n); // 32
System.out.printf("%#x", n); // 0x32
// # : flag를 붙이는 역할
double pi = 3.141592;
System.out.printf("%f", pi); // 3.141592
System.out.printf("%.2f", pi); // 3.14
System.out.printf("%.3f", pi); // 3.142
System.out.printf("[%10.3f]", pi); // [ 3.142]
int no = 1;
System.out.printf("[%d]", no); // [1]
System.out.printf("[%4d]", no); // [ 1]
System.out.printf("[%04d]", no); // [0001]
int i = 1000000;
System.out.printf("%,d", i); // 1,000,000
System.out.prinf("%(d", 123); // 123
System.out.prinf("%(d", -123); // (123)
System.out.printf("%d, %c", 65, 65); // 65, A
System.out.printf("%C", 'a'); // A
System.out.printf("%c", 'A'); // A
System.out.printf("%S", "a"); // A
System.out.printf("%X", "a"); // 1E
System.out.printf("%#X", "a"); // 0x1E
System.out.printf("%1$d, %1$c", 65) // 65, A
// \b를 사용하면 backspace를 한 번 누른다는 의미
String hi = "안녕하시렵니까";
System.out.printf("%s\d", hi); // 안녕하시렵니
// \b 사용 시 깨질 수 있는데, 이클립스 콘솔 버그이고, 윈도우 콘솔에서는 잘 실행됨