Back-end/JAVA

2.4 화면에서 입력받기 - Scanner

peridott 2026. 1. 27. 11:38
  • Scanner 클래스를 사용하려면, 아래의 한 문장을 추가해줘야 한다.
import java.util.*;		// Scanner 클래스를 사용하기 위해 추가
  • 그 다음엔 Scanner 클래스의 객체를 생성한다.
Scanner scanner = new Scanner(System.in);		// Scanner 클래스의 객체를 생성
  • 그리고 nextLine()이라는 메서드를 호출하면, 입력대기 상태에 있다가 입력을 마치고 '엔터키(Enter)'를 누르면 입력한 내용이 문자열로 반환된다.
String input = scanner.nextLine();		// 입력받은 내용을 input에 저장
int num = Integer.parseInt(input);		// 입력받은 내용을 int타입의 값으로 변환
  • 만일 입력받은 문자열을 숫자로 변환하려면, Integer.parseInt()라는 메서드를 이용해야한다.
    • 이 메서드는 문자열을 int타입의 정수로 변환한다.
      • 만일 문자열을 float타입의 값으로 변환하길 원하면, Float.parseFloat()를 사용해야한다.
  • 사실 Scanner클래스에는 nextInt()나 nextFloat()와 같이 변환없이 숫자로 바로 입력받을 수 있는 메서드들이 있고, 이 메서드들을 사용하면 문자열을 숫자로 변환하는 수고는 하지 않아도 된다.
int num = scanner.nextInt();		// 정수를 입력받아서 변수 num에 저장
  • 그러나 이 메서드들은 화면에서 연속적으로 값을 입력받아서 사용하기에 까다롭다.
  • 차라리 모든 값을 nextLine()으로 입력받아서 적절히 변환하는 것이 더 낫다.
  • 만일 숫자가 아닌 문자 또는 기호를 입력하면, 입력 받은 문자열을 숫자로 변환하는 과정인 Integer.parseInt()에서 에러가 발생한다. 특히 공백을 입력하지 않도록 주의하자.

'Back-end > JAVA' 카테고리의 다른 글

2.3 형식화된 출력 - printf()  (0) 2026.01.16
2.2 상수와 리터럴(constant & literal)  (0) 2026.01.12
2. 변수의 타입 - 2.1 기본형(primitive type)  (0) 2026.01.11
02. 변수  (0) 2026.01.10
1. 자바(Java Programming Language)  (0) 2026.01.09