Good Morning

System.out.printf() 이해하기 본문

Back-End/Java

System.out.printf() 이해하기

욘쥰 2024. 8. 27. 11:36

Java 프로그래밍을 하다 보면 System.out.printf() 메서드를 자주 마주치게 됩니다. 이 강력한 도구는 형식화된 문자열을 출력하는 데 사용되며, 특히 로깅이나 디버깅 시 매우 유용합니다. 오늘은 이 메서드의 사용법과 주요 특징에 대해 알아보겠습니다.

1. System.out.printf()의 기본 구조

System.out.printf() 메서드의 기본 구조는 다음과 같습니다:

System.out.printf(형식_문자열, 인자1, 인자2, ...);

 

여기서 '형식_문자열'은 출력할 텍스트의 형식을 지정하며, 뒤따르는 인자들은 이 형식에 맞춰 삽입될 값들입니다.

2. 형식 지정자 (Format Specifiers)

형식 문자열 내에서 %로 시작하는 특수한 문자 조합을 형식 지정자라고 합니다. 가장 흔히 사용되는 형식 지정자는 %s입니다.

%s의 특징

  • 문자열(String) 값을 나타냅니다.
  • 거의 모든 타입의 객체를 문자열로 변환하여 출력할 수 있습니다.
  • null 값은 "null"이라는 문자열로 출력됩니다.

예시:

String name = "Alice";
int age = 30;
System.out.printf("이름: %s, 나이: %s%n", name, age);
// 출력: 이름: Alice, 나이: 30

 

3. 다른 형식 지정자들

%s 외에도 다양한 형식 지정자가 있습니다:

  • %d: 정수
  • %f: 부동소수점 수
  • %b: 불리언
  • %c: 문자

4. 인자 매칭 순서

형식 지정자와 인자는 순서대로 매칭됩니다.

System.out.printf("A: %s, B: %s, C: %s%n", "첫번째", "두번째", "세번째");
// 출력: A: 첫번째, B: 두번째, C: 세번째

 

5. 고급 기능

인덱스 기반 참조

필요한 경우, 인자의 순서를 직접 지정할 수 있습니다:

System.out.printf("%3$s, %1$s, %2$s%n", "A", "B", "C");
// 출력: C, A, B

 

인자 재사용

같은 인자를 여러 번 사용할 수도 있습니다:

System.out.printf("%1$s, %1$s, %2$s%n", "반복", "끝");
// 출력: 반복, 반복, 끝

 

결론

System.out.printf()는 Java에서 형식화된 출력을 생성하는 강력한 도구입니다. 로깅, 디버깅, 사용자 인터페이스 등 다양한 상황에서 유용하게 사용될 수 있습니다. 이 메서드의 다양한 기능을 잘 활용하면, 더 읽기 쉽고 정보가 풍부한 출력을 생성할 수 있습니다.