19th May 2021 TIL

알파·2021년 5월 19일
0

TIL

목록 보기
7/18

Scanner와 BufferedReader

이 두 클래스는 동일한 목적으로 만들어진 것은 아니지만 알고리즘 사이트에서 입력을 받을 때 주로 사용된다.
Scanner 클래스는 사용이 매우 간편하지만 속도가 느리다는 치명적인 단점이 있다.
반면, BufferedReader는 성능이 좋은 대신 한 줄을 통째로 입력 받고 선언할 것이 많다.
Scanner를 사용했을 경우 채점 시에 시간초과가 일어날 수 있기 때문에 BufferdReader를 쓰는 것이 바람직할 듯하다.

아래는 각각 문자열을 입력받는 방법이다.

Scanner

import java.util.Scanner; //Scanner 클래스 임포트

public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        sc.close(); //닫아주고
        System.out.println(str); // 출력
        }

BufferedReader

import java.io.*; // io 전체 임포트

public class Main {
	public static void main(String[] args) throws IOException{ //예외처리 필수
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = br.readLine();
        System.out.println(str);
        }
        

Tips

주석 해제 : Ctrl + Shift + \
throws exception -> 예외 발생 이후 코드 실행하지 않음
try ~ catch -> 예외 발생 이후 코드를 실행함

profile
I am what I repeatedly do

0개의 댓글