본문 바로가기
백엔드/Java

[JAVA] 출력 메소드(print, printf, println)와 서식지정자

by BGwon_C 2023. 6. 14.

출력메소드

자바는 출력을 위해서는 출력 서식을 이용하여야 한다.

이를 위해서는 자바에서 제공하는 기본 출력 메소드를 사용하여야 하는데,

가장 많이 사용되는 메소드에는 print, prinf, println 3가지 종류가 있다.

 

종류 :

  • print  (줄바꿈 포함X) (서식 지정자 사용 불가능)
 Ex  Result
System.out.print ("나는 자바를 ");
System.out.print ("공부한다.");
나는 자바를 공부한다.
  • printf (줄바꿈 포함X) (서식 지정자 사용 가능
 Ex  Result
System.out.println ("나는 자바를 ");
System.out.println ("공부한다.");
나는 자바를

공부한다.
  • println (자동 줄바꿈 포함 O) (서식 지정자 사용 가능)
    (println에는 '\n' 연산자가 포함되어있다고 이해하면 된다.)
 Ex
System.out.printf ("출력 서식", 출력할 내용);

 

사용 방법  :

System.out.print();

C언어와는 달리 자바에서는 print메소드 사용을 위해서 System 클래스까지 표시를 해줘야 한다.

System클래스는 Java java.lang 패키지에 들어있다. (패키지의 개념에 대해서는 다음에 다룰 예정이다.)

출력메소드 사용예시

 

서식지정자 (Format Specifier)

우리가 흔히 결과물을 출력할 때 사용하는 'System.out.prinln'에는 System클래스라는 의미 외에 또다른 의미가 있다.

출력하고자 하는 값을 문자열로 포맷팅해서 우리에게 보여주는 역할도 수행하는 것이다. 이를 문자열 포맷팅이라고 하고, 이때 사용하는 것이 서식지정자이다.(서식문자열(Formmatted String, 서식화된 문자열)이라고도 한다.)

 

서식지정자는 % 기호와 문자로 구성된다.

 

일반적으로 사용되는 자바의 서식 지정자들

%d 10진수 int 정수(decimal integer)형 문자로 출력
%f float, double(부동소수점) 실수(floating-point number)형 문자로 출력
%s 문자열(string)로 출력 
%c 문자(character)형으로 출력 (= 문자 하나)
%b boolean으로 출력
%n 줄 바꿈
%x (= %X) 16진수 정수(hexadecimal integer)로 출력 
%o 8진수 정수(octal integer)로 출력
%e (= %E) 지수 표기법으로 표현된 부동소수점 숫자로 출력

 

위에서는 printf 만 언급했지만 사실 서식 지정자의 사용법은 하나가 더 있다. 문자열(String)으로 형변환 하기위해 String.format() 메서드와 함께 사용이 가능하다.

 

 

정리 :

정리하자면, 서식지정자의 사용법은 크게 두 가지이다.

  • printf("서식지정자", 값1, 값2, ...) : 화면에 출력하기 위해 printf 메소드에 사용
  • String.format("서식지정자", 값1, 값2, ...) : 문자열(String)로 형변환하기 위해 String.format 메소드에 사용

 

참고) 서식지정자를 사용하지 않고 문자열 포맷팅을 하는 메소드도 있다. 바로 Integer.to 메소드이다.

  • String.format() 메소드를 사용하여 원하는 포멧으로 출력 가능
    • ex) String.format("%x", number);     String.format("%X", number);
           String.format("o", number);
  • Integer.toXXX(n) 메소드를 사용하여 원하는 포맷으로 출력 가능
    • ex) Integer.toHexString(number);
           Integer.toOctalString(number);
           Integer.toBinaryString(number);

참고 2) 상수 : final, 관례적으로 상수값을 담는 상수명은 대문자로 작성

  • ex) final int NUM = 1;

 

 

'백엔드 > Java' 카테고리의 다른 글

[Java] 5. 배열(Array)  (0) 2023.07.31
[Java] 2. 변수(Variable)  (0) 2023.07.31
[Java] 3. 주의해야할 연산자 특징들  (0) 2023.07.31
[Java] 1. 자바와 JVM  (0) 2023.07.31
[Java] 4. 제어문(조건문과 반복문)에서 주의할 점  (0) 2023.07.31

댓글