본문 바로가기

Java

Java print(), println(), printf()

1. print()

- 괄호 안의 내용을 출력(줄바꿈 안함)

- 사용방법

System.out.print()

 

 

 

2. println()

- 괄호 안의 내용을 출력하고 줄바꿈을 함

- 사용방법

System.out.println()

 

 

 

3. printf()

- 괄호 안의 값을 다른 형식으로 출력할 때 사용

- 지시자(specifier)을 사용하여 변수의 값을 여러가지 형식으로 변환하여  출력

지시자 설명 구분
%b 불리언(boolean) 형식으로 출력 정수
%d 10진(decimal) 정수의 형식으로 출력
%o 8진(octal) 정수의 형식으로 출력
%x, %X 16진(hexa-decimal) 정수의 형식으로 출력
%f 부동 소수점(floating-point)의 형식으로 출력 실수
%e, %E 지수(exponent)표현식의 형식으로 출력
%c 문자(character)로 출력 문자
%s 문자열(string)로 출력

 

1) 정수를 n진수로 출력하기

System.out.printf("%d",15); // 10진수 15 출력
System.out.printf("%o",15); // 8진수 17 출력
System.out.printf("%x",15); // 16진수 f 출력
System.out.printf("%s",Integer.toBinaryString(15));
// toBinaryString메서드를 사용하여 정수 15를 2진 문자열로 나타냄, 1111 출력

 

 

2. 8진수와 16진수에 접두사 붙여서 출력하기

System.out.printf("%#o",15); // 8진수 017 출력
System.out.printf("%#x",15); // 16진수 0xf 출력
System.out.printf("%#X",15); // 16진수 0Xf 출력

 

 

3. 실수 출력을 위한 지시자 %f - 지수형식(%e), 간략한 형식(%g)

float f = 123.4567890f;
System.out.printf("%f",f); // 123.456787 소수점 아래 6자리까지 표현, float형식은 정밀도 7자리까지 정확하게 나타냄
System.out.printf("%e",f); // 1.234568e+02 지수 형식으로 출력(반올림)
System.out.printf("%g",123.456789); // 123.457 간략한 형식(반올림)
System.out.printf("%g",0.00000001); // 1.00000e-8 간략한 형식

 

 

4. 출력 값 정렬하기 & 0으로 채우기

System.out.printf("[%5d]%n", 10);  // [   10]
System.out.printf("[%-5d]%n", 10); // [10   ]
System.out.printf("[%05d]%n", 10); // [00010]

 

 

5. 출력 값 전체 자리수와 소수점 아래 자리 지정하여 출력하기 [%전체자리.소수점아래자리f]

double d = 1.23456789  
System.out.printf("d=%14.10f%n", d;); // 전체 14자리 중 소수점 아래 10자리까지 출력
-> d=1.2345678900 출력(앞 빈자리는 공백으로 채우고, 소수점 아래자리 뒤 빈 자리는 0으로 채움)


String url = www.123456789.com // 17자리 문자열
System.out.printf("[%s]%n", url);    // [www.123456789.com]
System.out.printf("[%20s]%n", url);  // [   www.123456789.com] 오른쪽 정렬로 출력
System.out.printf("[%-20s]%n", url); // [www.123456789.com   ] 왼쪽 정렬로 출력
System.out.printf("[%.8s]%n", url);  // [www.1234] 8자리까지 출력

 

cf) 개행 문자 \n과 %n 

%n: os관계없이 사용 할 수 있음, 되도록 %n으로 사용하기