728x90
반응형
Scanner와 BufferedReader의 가장 큰 차이점은 속도입니다.
숫자 100만개를 입력받는데 걸리는 속도는 Scanner는 약 2.5ms / BufferedReader는 약 0.4ms
나머지 차이점은 다음과 같다.
- 버퍼크기 : Scanner(1024 chars), BufferedReader(8192 chars)
- 문자열 : Scanner는 문자열을 구분하여 분석, BufferedReader는 문자열을 단순히 읽고 저장
- 동기화 : Scanner은 동기화x, BufferedReader는 동기화가 가능
BufferedReader는 InputStreamReader에 버퍼링 기능이 추가된 class입니다.
일정한 크기의 데이터를 한 번에 읽어와 버퍼에 보관, 사용자의 요청이 있을 때 버퍼에서 데이터를 읽어오는 방식입니다.
Scanner는 Java1.5부터 java.util 패키지 내에 포함된 class입니다.
공란과 줄바꿈을 입력값의 경계로 인식, 좀 더 쉽게 데이터를 입력받을 수 있습니다.
또한, 별도의 Casting이 필요하지 않다는 점(사용하는 함수에 따라 데이터 타입이 결정)
728x90
반응형
'Developer's_til > 그외 개발 공부' 카테고리의 다른 글
[객체지향] Java를 Java스럽게 (0) | 2020.10.28 |
---|---|
컴파일러와 인터프리터의 차이? (0) | 2020.10.28 |
Python을 활용한 KNN 알고리즘 (0) | 2020.10.04 |
Python을 활용한 K-means Clustering (0) | 2020.10.04 |
String, StringBuilder, StringBuffer의 차이? (0) | 2020.10.01 |