Java 출력 함수 — print, println, printf와 문자열 결합

코딩Java
읽는데 5분 소요
처음 쓰여진 날: 2026-04-02
마지막 수정일: 2026-04-02
조회수: 2

요약

Java의 출력 함수 System.out.print(), println(), printf()의 차이점과 + 연산자를 이용한 문자열 결합 규칙을 정리합니다. 정보처리기사 실기에서 출력 결과를 정확히 쓰기 위한 핵심 개념입니다.

핵심 정리

개념설명
System.out.print()출력 후 줄바꿈 없음
System.out.println()출력 후 줄바꿈
+ 문자열 결합한쪽이 문자열이면 나머지도 문자열로 변환하여 이어붙임
+ 계산 순서왼쪽에서 오른쪽으로 순서대로 계산
System.out.printf()서식 지정자(%d, %s, %f)로 형식을 지정하여 출력, 줄바꿈 없음

print()println()의 차이 쌩기초

Java에서 화면에 값을 출력할 때 System.out.print()System.out.println() 두 가지를 사용합니다. System.out1을 앞에 붙여야 화면에 출력됩니다. 차이는 출력 후 줄바꿈을 하느냐 안 하느냐입니다.

두 메서드2의 차이를 표로 정리하면 다음과 같습니다.

메서드줄바꿈
System.out.print()안 함
System.out.println()
java
코드 하이라이팅 중...
java
코드 하이라이팅 중...

+ 연산자로 문자열 결합 기초

Java에서 + 연산자는 양쪽이 모두 숫자이면 덧셈을 합니다. 하지만 한쪽이라도 문자열이면 나머지도 Java가 알아서 문자열로 바꾸어 이어붙입니다.

java
코드 하이라이팅 중...

계산 순서에 주의 — 왼쪽에서 오른쪽으로

+ 연산자는 왼쪽에서 오른쪽으로 순서대로 계산됩니다. 어디서 문자열이 등장하느냐에 따라 결과가 완전히 달라집니다.

+ 연산자의 계산 순서 — 문자열 위치에 따라 결과가 다릅니다
+ 연산자의 계산 순서 — 문자열 위치에 따라 결과가 다릅니다
java
코드 하이라이팅 중...

왼쪽부터 계산합니다:

  1. 1 + 2 → 양쪽 모두 숫자 → 덧셈 → 3
  2. 3 + "감자" → 한쪽이 문자열 → 이어붙이기 → "3감자"

출력: 3감자

java
코드 하이라이팅 중...
  1. "감자" + 1 → 한쪽이 문자열 → 이어붙이기 → "감자1"
  2. "감자1" + 2 → 한쪽이 문자열 → 이어붙이기 → "감자12"

출력: 감자12

빈 문자열 "" 활용

숫자를 문자열로 바꾸고 싶을 때 빈 문자열 ""을 더하는 패턴이 시험에 종종 출제됩니다.

java
코드 하이라이팅 중...

String3은 문자열을 담는 타입입니다.


printf()로 서식 출력 기초

printf()는 서식 지정자4를 사용하여 출력 형식을 지정합니다. print()와 마찬가지로 줄바꿈을 하지 않지만, %d 같은 서식 지정자로 출력 형식을 세밀하게 지정할 수 있다는 점이 다릅니다.

java
코드 하이라이팅 중...

서식 지정자는 여러 개 사용할 수 있습니다. 순서대로 뒤에 나열한 값이 채워집니다.

java
코드 하이라이팅 중...

주요 서식 지정자

서식 지정자의미예시
%d정수(1, 42 같은 소수점 없는 숫자)printf("%d", 42)42
%s문자열printf("%s", "감자")감자
%f실수 (소수점 6자리)printf("%f", 3.14)3.140000
%c문자 1개printf("%c", 'A')A
%%% 기호 자체printf("100%%")100%

%f는 소수점 이하 6자리를 출력하며, 자리가 부족하면 0으로 채웁니다. 3.14를 출력하면 3.140000이 되는 이유입니다.

%c는 작은따옴표로 감싼 문자 1개를 출력합니다. 작은따옴표('A')는 문자 하나를, 큰따옴표("A")는 문자열을 나타내는 점이 다릅니다.

자릿수 지정

서식 지정자에 숫자를 넣어 자릿수를 지정할 수 있습니다.

java
코드 하이라이팅 중...

%5d는 총 5칸을 확보한 뒤 숫자를 오른쪽에 맞춥니다. 42는 2자리이므로 5 - 2 = 3칸이 왼쪽에 빈칸으로 남습니다.


Footnotes

  1. Java에서 화면(표준 출력)에 값을 보내는 통로입니다. System은 시스템 기능을 담은 클래스, out은 그 안의 출력 객체입니다.

  2. Java에서 특정 동작을 수행하는 코드 묶음입니다. 다른 언어에서는 함수라고도 합니다.

  3. Java에서 문자열을 저장하는 참조 타입입니다. int, double 같은 기본 타입과 달리 대문자로 시작합니다.

  4. 출력할 값이 들어갈 자리를 표시하는 기호입니다. %d는 정수, %s는 문자열 자리를 나타냅니다.


후수학습(1개)
학습 경로
범위: 1단계