
자바에서는 printf 함수가 직접적으로 제공되지 않지만, System.out.printf 메소드를 사용하여 비슷한 기능을 수행할 수 있습니다. System.out.printf는 PrintStream 클래스의 메소드로, 특정 형식에 맞춰 포맷팅된 문자열을 출력하는 역할을 합니다.
System.out.printf 메소드는 다음과 같은 형식을 가집니다:
javaコードをコピーする
public class Main {
public static void main(String[] args) {
int number = 10;
double doubleNumber = 3.14159;
char character = 'A';
// 정수 출력
System.out.printf("정수: %d\n", number); // 출력: 정수: 10
// 부동 소수점 숫자 출력
System.out.printf("부동 소수점 숫자: %f\n", doubleNumber); // 출력: 부동 소수점 숫자: 3.141590
// 문자 출력
System.out.printf("문자: %c\n", character); // 출력: 문자: A
}
}
위 예제에서 System.out.printf 메소드는 System.out 객체를 통해 표준 출력에 포맷팅된 문자열을 출력합니다. 여기서 사용된 포맷 지정자는 C 언어의 printf 함수와 동일한 형태를 가집니다.
자바에서 사용되는 주요 포맷 지정자들은 다음과 같습니다:
%d: 10진수 정수를 출력합니다.%f: 부동 소수점 숫자를 출력합니다.%c: 문자를 출력합니다.%s: 문자열을 출력합니다.%b: boolean 값을 출력합니다 (true 또는 false).%n: 새로운 줄에 대한 플랫폼-독립적인 줄 바꿈 문자열을 출력합니다.포맷 지정자 뒤에는 옵션을 추가하여 출력의 정확한 형식을 지정할 수 있습니다. 예를 들어:
%d는 기본적으로 오른쪽 정렬이지만, %10d와 같이 숫자를 넣어 왼쪽에 정렬을 특정할 수 있습니다.%f는 기본적으로 소수점 이하 여섯 자리까지 출력하지만, %.2f와 같이 숫자를 넣어 소수점 이하 두 자리까지 출력할 수 있습니다.자바의 printf 메소드는 포맷 지정자와 매개변수의 타입이 일치하지 않으면 IllegalFormatException 예외를 발생시킵니다. 따라서 포맷 지정자와 매개변수의 타입을 일치시키는 것이 중요합니다.
자바에서는 System.out.printf 메소드를 통해 C 언어의 printf 함수와 유사한 기능을 제공합니다. 이를 이용하여 텍스트를 특정 형식에 맞추어 출력하거나 파일에 포맷에 맞춰 데이터를 저장하는 등의 작업을 수행할 수 있습니다.