Java

Java 03. Scanner 스캐너

지댕댕 2023. 3. 3. 22:02
728x90

 

1.Scanner 클래스란?

자바에서 화면으로부터 데이터를 입력받는 기능을 제공하는 클래스이다. java.util 패키지 내에 존재하는 클래스로서 정수, 실수, 문자열과 같은 기본적인 데이터 타입 입력을 받는다.

.

Scanner 클래스의 특징

기본적인 데이터 타입들을 Scanner 의 메소드를 사용하여 입력받을 수 있다.

  1. 예로 들어 100을 입력하고자 할 때, String(문자열)로 입력받고 싶으면 next() 나 nextLine() 을, int(정수)로 입력받고 싶다면 nextInt() 를 사용하여 입력받으면 알아서 해당 타입으로 입력된다.


  2. Scanner 을 사용할 시 util 패키지를 경로의 Scanner 클래스를 호출해야 한다.

    자바에서 쓰이는 대부분의 클래스는 lang 패키지가 아니라면 import 을 통해 호출해주어야 한다.
    Scanner 의 경우는 java.util 패키지에 있다.



  3. 공백(띄어쓰기) 또는 개행(줄 바꿈)을 기준으로 읽는다.

    Scanner 의 입력 메소드들은 대부분 공백과 개행(' ',  \t,  \r,  \n)을 기준으로 읽는다. 이 덕분에 사용자의 편의에 따라 쉽게 입력을 받을 수 있다.

 

앞에 Scanner 의 특징에서 언급했듯이 Scanner 클래스를 사용하기 위해서는 호출해주어야 한다고 했다.

 ( import java.util.scanner; )

자바의 경우 java.util 패키지 안에 Scanner 클래스가 있으므로 다음과 같이 import 를 쓴 후 해당 클래스 경로를 호출하도록 한다.

우리가 입력을 하기 위해 Scanner 클래스를 쓰고자 먼저 클래스를 호출했다.

그다음으로 해야 할 것이 바로 객체 생성이다.

 

기본적으로 객체 생성하는 방법은 다음과 같다.

클래스_이름 객체_이름 = new클래스_이름();

우리는 Scanner 라는 클래스를 사용할 것이기 때문에 클래스 이름에는 Scanner 가 들어가야 한다.

 

객체 이름은 기억하기 쉬운 이름으로 지정하면 된다.

(대체로 Scanner 의 경우 객체이름은 in, input, sc, scan 이렇게 4가지가 가장 많이 쓰인다.)

 

 

Scanner 의 경우 아래처럼 객체를 생성해주면 된다.

Scanner in = new Scanner(System.in); // scanner 객체 생성

주의할 것은 Scanner 을 생성할 때 System.in 이 들어간다는 점!

System.in 은 사용자로부터 콘솔창을 통해 입력을 받기 위한 입력 스트림이다!

System.in // 정수형, 실수형과 같은 값을 화면에서 입력받겠다는 의미!

System.out // 화면으로 출력하는 것!

System.err // 화면으로 출력할 수는 있지만, 다른 파일등으로 결과가 redirection 되지 않음!

그렇기 때문에 Scanner 뿐만 아니라 다른 입력 방식들도 사용자로부터 입력을 받기 위해서는 System.in 이 들어감!

 

Scanner 연습

728x90