JAVA/JAVA

Java | Scanner

pathas 2020. 1. 28. 22:43

Scanner

Java.util 패키지에 있는 입력 클래스

문자뿐만 아니라 정수, 실수 등 다른 자료형도 읽을 수 있음

콘솔 화면 및 파일, 문자열을 생성자의 매개변수로 받아 자료를 읽어 올 수 있음


Scanner 대표 생성자

생성자 설명
Scanner(File source) 파일을 매개변수로 받아 Scanner 생성
Scanner(InputStream source) 바이트 스트림을 매개변수로 받아 Scanner 생성
InputStream source: 간단하게 키보드라고 할 수 있음
Scanner(String source) String을 매개변수로 받아 Scanner 생성

Scanner(System.in): 표준 입력(콘솔 입력)으로부터 자료를 읽어 들이는 Scanner 생성
System.in은 InputStream source의 매개변수임


Scanner Method

메소드 설명
next() 문자열 String을 ' '(띄어쓰기) 단위로 읽음
nextLine() 문자열 String을 줄 단위로 읽음
nextInt() int 자료형을 읽음
nextDouble() double 자료형을 읽음

사용법

// 다른 패키지에 있는 클래스를 사용하고자 할 때는 반드시 import문을 작성해야 함
import java.util.Scanner;

public class ArgTest3 {

    public static void main(String[] args) {
         // Scanner 클래스를 이용해서 표준입력으로 문자열을 입력 받는 sc 객체 생성
        Scanner sc = new Scanner(System.in);

         // 입력된 문자열을 str 변수에 저장
        System.out.println("문자를 입력하세요");
        String str = sc.next();
        System.out.println("입력받은 문자: " + str);    // 안녕하세요!

        // 입력된 정수 값을 integer 변수에 저장
        System.out.println("정수를 입력하세요");
        int integer = sc.nextInt();
        System.out.println("입력받은 정수: " + integer);    // 34

        // 입력된 실수 값을 dbl 변수에 저장
        System.out.println("실수를 입력하세요");
        double dbl = sc.nextDouble();
        System.out.println("입력받은 실수: " + dbl);    // 22.14
    }

}

※ next()메소드로 숫자를 입력받으면 문자열로 취급됨

 

※ 자동 import 단축키 : Ctrl + Shift + O


사용자로부터 데이터를 직접 입력받을 수 있도록 하는 Scanner 클래스에 대해 알아보았습니다.

콘솔로 데이터를 입력받을 수 있기 때문에 자바로 코딩 연습을 할 때에도 유용하게 사용할 수 있습니다.