article id #148
categorized under programming/think in java & written by 정환
categorized under programming/think in java & written by 정환
예전부터 자바 공부를 하면서 궁금했던 사항입니다.
BufferedReader 클래스와 Scanner 클래스의 차이는 무엇일까요?
우선 네이버 검색을 시도해봤는데, 딱히 적당한 결과를 찾지도 못했습니다.
우리의 구글링으로 검색한 결과, Sun사의 JAVA 포럼에서 비슷한 질문이 올라온거 같네요..^^
(http://forums.sun.com/thread.jspa?threadID=773648&tstart=35835)
결론적으로 Scanner 클래스는 JDK 1.5 버젼부터 등장한 클래스고, 초보자들이 쓰기는 쉬운거 같은데, 아래와 같이 메세지를 주시네요.
The Scanner should not be used for simple input for beginner's programs.
아래와 같은 메세지도 존재하네요..^^
Scanner seems like such a simple, but Swiss-Army-Knife kind of
tokenizer (it does all sorts of things, without regard to any
particular context) that it seems like it was introduced specifically
for newbies or for people who want to write some quick-and-dirty code.
I would think that if you were doing any really advanced stuff you'd
write a specialized parser or use whatever the java equivalent of lex
is.
하지만 정확히도 저도 자세히는 잘 모르겠네요..
코드 간결도에 있어서는 BufferedReader가 Scanner보단 더 나을거 같기도 하지만, 속도면에서는 BufferedReader가 나은것
같습니다만, 2개중에 무엇을 더 하는게 좋을거 같은지는 조금 더 찾아봐야 할거 같습니다.. ㅠㅠ





