<Scanner>

자바에서는 입력받는 방법이 여러가지이다. 지금까지 우리가 사용했던 방식은 BufferedReader라는 클래스를 사용하는 것이고, 이번에는 Scanner라는 클래스를 사용하는 방법을 알아보겠다.

 

BufferedReader 장점은 단순한 구조라는 것이다.BufferedReader의 사용 메소드는 read(int형)와 readLine(String) 두 개가 전부다. 반면에 Scanner는 만능이다. Scanner는 단순히 읽어들이기만 하는 것이 아니라 parsing과 tokenizing을 할 수가 있다. 그렇기 때문에 지원하는 메소드가 상당히 많다.

BufferedReader는 String으로 출력하여 원하는 숫자나 문자로 parsing을 해줘야한다.(받아서 일일히 쪼개야 함)

Scanner는 메소드에 nextInt(), nextDouble(), nextLine()등 각자의 자료형에 따라서 선택해서 할 수 있다.

예들 들어 nexInt() - int형, nextDouble() - double형, next() - String()형 등을 사용하면 된다.

 

<실습>


위의 코드에서 보면 알겠지만 BufferedReader처럼 따로 int형으로 파싱을 안해줘도 된다.


-결과-


Scanner는 토큰을 제어할 수 있다. BufferedReader는 space bar 혹은 특수문자를 모두 문자열로 입력받아 출력하는데 Scanner는 이러한 것들을 구분자로 구분지어서 따로 입력받을 수 있다.



<실습>

코드를 보면 Scanner의 메소드인 useDelimiter를 사용하여 토큰구분자 ,(콤마)로 입력 받을때 구분지을 수 있게 하였다.



-결과-


LIST

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

Java - for문  (0) 2015.12.06
Java - 2차원 배열  (0) 2015.12.06
Java - 배열  (0) 2015.12.05
Java - Switch~case문  (0) 2015.12.05
Java - if문, if ~ else if문  (0) 2015.12.05

+ Recent posts