본문 바로가기
Programming/Java

[JAVA] 입력 - Scanner

by 코딩하는 랄로 2023. 9. 19.
728x90

입출력

자바에는 입출력 기능을 위한 여러 메소드를 제공하고 있다. 출력을 위한 가장 기본적인 메소드는 다음과 같다.

System.out.println("Hello World!");

위의 출력 메소드는 자바를 처음 시작하고 처음으로 코드를 돌려볼 때 많이 접할 수 있는 문구이다. println이라는 메소드를 통해서 원하는 문자열, 여러 변수 등을 console 창에 출력할 수 있다.

 

그 외에도 입력을 위한 여러 메소드 등을 제공하는 가장 대표적인 것은 Scanner와 BufferedReader가 있다. 이번 글에서는 Scanner를 사용하는 방법에 대해서 다루겠다.

 

 

 

Scanner

자바는 여러 편리한 클래스를 package에 담아서 보관하고 있기 때문에 해당 Class를 사용하고 싶다면 import를 통해서 Class를 현재 Class로 가지고 와야 한다.

 

그렇기 때문에 Scanner를 사용하기 위해서는 java의 util package에 존재하는 Scanner라는 Class를 다음과 같이 import하여야 사용할 수 있다.

import java.util.Scanner;   //Scanner class import

 

import를 한다고 Scanner의 메소드를 바로 사용할 수 있는 것이 아닌 Scanner Class의 메소드를 사용할 수 있는 Object를 다음과 같이 선언하여야 한다.  

Scanner sc = new Scanner(System.in);

 

new 명령어를 통해 Scanner 클래스 타입을 가지는 object를 선언하고 System.in 매개변수를 통해 콘솔 창으로 들어오는 입력값을 받도록 선언해주는 문장이다.

 

 

 

Scanner Method

메소드 사용을 위한 사전 준비는 끝났으니 어떠한 메소드를 사용할 수 있는지 알아보자. Scanner 메소드 중 가장 흔히 쓰이는 메소드로는 다음과 같다.

  • next() : 공백을 기준으로 입력된 문자열을 반환
  • nextLine() : 개행문자(\n)를 기준으로 입력된 공백을 포함하는 문자열을 반환
  • nextInt() : 공백을 기준으로 입력된 정수를 반환
  • nextDouble() : 공백을 기준으로 입력된 실수를 반환

사용시 반환되는 타입에 알맞는 변수에 할당해주어야 하고 메소드에 맞는 input값을 넣어주어야 오류가 발생하지 않는다. Scanner를 이용하여 int형 변수를 입력받는 전체 코드는 다음과 같다.

import java.util.Scanner;   //import Scanner class

public class Main {
	public static void main(String[] args) {
    	Scanner sc = new Scanner(System.in);   //Scanner 타입의 object선언
        
        int n = sc.nextInt();    // int type의 입력을 받아서 변수 n에 저장
        
        System.out.println(n)    // 입력 받은 변수 n의 값을 출력
        
        sc.close();        // 사용이 끝난 Scanner object 종료
    }
}

 

 

 

728x90

'Programming > Java' 카테고리의 다른 글

[Java] 연산자 - SCE, 비트  (0) 2023.09.20
[Java]연산자 - 부호, 증감, 비교, 논리  (0) 2023.09.20
[JAVA] 연산자 - 대입  (0) 2023.09.20
[JAVA] 입력 - BufferedReader(ft. BufferedWriter)  (0) 2023.09.19
[JAVA] 변수(Variables)  (0) 2023.09.19