2024. 12. 18. 13:00ㆍJAVA
안녕하세요. 진득코딩입니다.
저번 포스팅에서 여러 변수들의 타입에 대해서 살펴보는 시간을 가졌습니다.
이번 시간에는 자바 console에 입력과 출력에 대해서 살펴보도록 하겠습니다.
printf()와 지시자

- println()은 값을 변환하지 않고는 다른 형식으로 출력할 수 없습니다.
- 소수점 둘째 자리까지만 출력한다거나, 정수를 16진수나 8진수로 출력하고 싶을 경우가 생기게 됩니다.
- 이럴 때 printf()를 사용하면 원하는 출력이 가능하게 됩니다.
- printf()를 사용할 때에는 지시자(specifier)를 사용하게 됩니다.
- 지시자는 값을 어떻게 출력할 것인지를 지정해 주는 역할을 하게 됩니다.

위 예시와 같이 값이 2개라면 지시자도 2개를 사용해주어야 합니다.
3개 이상의 값도 지시자의 개수를 맞춰서 지정해줘야 하며 개수의 제한은 없습니다.

printf()는 줄바꿈을줄 바꿈을 따로 해주지 않기 때문에 줄 바꿈을 하기 위해서는 위 예시와 같이 \n을 따로 작성해주어야 합니다.
지시자 | 설명 |
%b | 불리언(boolean) 형식으로 출력 |
%d | 10진(decimal) 정수의 형식으로 출력 |
%o | 8진 (octal) 정수의 형식으로 출력 |
%x, %X | 16진 (hexa-decimal) 정수의 형식으로 출력 |
%f | 부동 소수점(floating-point)의 형식으로 출력 |
%e, %E | 지수(exponent) 표현식의 형식으로 출력 |
%c | 문자(character)로 출력 |
%s | 문자열(string)로 출력 |
자주 사용되는 지시자들의 나열입니다.
각각의 설명을 읽고 필요한 부분에 사용해주시면 됩니다.


- 예제를 통해서 printf()에 대해 살펴보도록 하겠습니다.
- 우선 finger 부분에서 출력되는 것을 보면 '0'과 '-'의 역할을 알 수 있습니다.
- 양의 정수가 들어가게 되면 앞에 그만큼의 공간이 생기게 되고 음의 정수가 들어가게 되면 뒤에 공간이 생기게 됩니다.
- 0을 추가로 작성해주게 되면 공백에 0이 들어가게 됩니다.
- 지시자 '%x'와 '%0'에 '#'을 사용하게 되면 접두사 '0x'와 '0'이 각각 붙습니다.
- '%X'는 16진수에 사용되는 접두사와 영문자를 대문자로 출력하게 됩니다.
- 10진수를 2진수로 출력해 주는 지시자는 따로 없기 때문에 'Integer.toBinaryString(int i)'를 사용해서 정수를 2진 문자열로 변환해주어야 합니다.
- char 타입의 값을 '%d' 지시자로 출력하기 때문에 (int)를 붙여서 형변환을 해준 후 출력해야 합니다.


- 실수형 값의 출력에 사용되는 지시자는 '%f', '%e', '%g'가 있습니다.
- 주로 '%f'가 사용되고 '%e'는 지수형태로 출력할 때, '%g'는 값을 간략하게 표현할 때 사용합니다.
- '%f'는 소수점 아래 7자리에서 반올림해서 출력합니다.
- 지시자 '%s'에 숫자를 추가하면 원하는 만큼의 출력 공간을 확보하거나 문자열의 일부만 출력할 수 있습니다.
Scanner 사용하여 화면에서 입력받기

이번에는 Scanner 클래스를 이용하여 console에서 입력받는 방법에 대해서 살펴보도록 하겠습니다.
Scanner 클래스를 사용하려면 먼저 import를 해줘야 합니다.
import java.util.*; // Scanner 클래스를 사용하기 위해 추가
그리고 Scanner 클래스의 객체를 생성해야 합니다.
Scaner scan = new Scanner(System.in); // Scanner 클래스의 객체를 생성
객체를 생성한 후 nextLine()이라는 메서드를 호출하면, 입력 후 엔터를 누르게 되면 입력한 내용이 문자열로 반환되게 됩니다.
입력받은 문자열을 숫자로 변환하려면, Integer.parseInt()라는 메서드를 사용해야 합니다.
해당 메서드는 문자열을 int 타입의 정수로 변환합니다.

위 예제를 실행하면 '두 자리 정수를 하나 입력해주세요.>'라는 문구만 나오게 됩니다.
그 상태에서 console에 원하는 숫자를 입력하게 되면 해당 숫자가 밑에 출력되게 됩니다.
이번 시간에는 console에 좀 더 원하는 출력을 하는 방법과 console에서 입력받는 방법에 대해서 살펴보았습니다.
원하는대로 입력과 출력을 하기 위해서는 위 내용에 대해서 잘 숙지하고 적절히 활용하는 것이 좋다고 생각합니다.
이번 포스팅은 여기까지입니다.
끝까지 봐주셔서 감사합니다. 😊
'JAVA' 카테고리의 다른 글
기본형 타입 중 논리형과 문자형에 대해 알아보자 (4) | 2024.12.20 |
---|---|
진법을 이용하여 숫자를 여러 방식으로 표현해보자 (0) | 2024.12.19 |
자바 변수의 타입에 대해서 알아보자 (0) | 2024.12.17 |
자바에서의 변수에 대해 알아보자 (0) | 2024.12.16 |
자바 프로그램 작성법과 주석에 대해서 알아보자 (2) | 2024.12.13 |