반응형

화면에서 입력받기 - Scanner

  • Scanner란?

화면으로부터 데이터를 입력받는 기능을 제공하는 클래스

  • Scanner를 사용하려면?

1. import문 추가

import java.util.*;

이때 *은 java.util 패키지(특정 패키지) 안에 있는 모든 클래스를 사용할 수 있다.
import java.util.Scanner라고 적어도 되는데, 이렇게 하면, Scanner클래스만 사용할 수 있다;

2. Scanner 객체의 생성

Scanner scanner = new Scanner(System.in);

System.in은 화면 입력을 의미한다.

3. Scanner객체를 사용

int num = scanner.nextInt();		// 화면에서 입력받은 정수를 num에 저장

이 문장은 화면에서 입력한 정수를 변수 num에 저장하는 것이다.
정수가 아니라 실수를 입력받을 때는 nextInt가 아니라 nextFloat를 해주면 된다.

String input = scanner.nextLine();		// 화면에서 입력받은 내용을 input에 저장

nextLine()메서드는 화면에서 입력한 내용을 줄단위로 읽어서 문자열로 반환한다.
그래서 저장할 변수의 타입이 String이다.

int num = Integer.parseInt(input);		// 문자열(input)을 숫자(num)로 변환

문자열을 숫자로 변환하는 문장이다.

숫자를 문자열로 변환할 때는, 숫자+"",
문자열을 숫자로 바꿀때는, Integer.parseInt()라는 메서드를 사용하면 된다.

근데 위에서 아래 두문장을 합쳐서 맨위의 한문장과 같다.
다른방법을 알아본 것 뿐이고, 한 라인에 여러가지 값을 입력받는 경우에는, nextLine()으로 라인전체를 읽어온 다음에 값을 나눠서 처리해야 할 때가 있는데, 그럴때 이 두문장을 적절히 응용하면 된다. 

그러나 단순히 숫자 하나하나를 입력받을 때는 int num = scanner.nextInt(); 문장을 이용하면 된다.

자바 scanner

반응형

'JAVA' 카테고리의 다른 글

타입간의 변환방법  (0) 2022.03.14
정수형의 오버플로  (0) 2022.03.14
printf를 이용한 출력  (0) 2022.03.12
기본형의 종류와 범위  (0) 2022.03.11
기본형과 참조형  (0) 2022.03.11