Java/Java 기본
JAVA Scanner 와 BufferedReader 차이점
I'm ward
2022. 5. 26. 03:23
1. Scanner와 BufferedReader를 굳이 나눠서 사용하는 차이점을 알아보기로 했다.
사용자 입장에서는 Scanner가 직관적이고, 다양한 메소드들을 제공하기때문에 처음 Java를 배우기엔 좋다고 생각하였으나.. 다음과 같은 차이점이 존재한다.
Scanner | BufferedReader | |
구분자 | Space(공백), Enter(줄바꿈) | Enter(줄바꿈) |
반환 데이터 | 메소드 마다 다름 | String |
버퍼 크기 | 1024 | 8192 |
동기화 여부 | X | O (멀티스레드에서 안전함) |
속도(천만번 입력) | 4.8448초 | 0.6585초 |
2. 그렇다면 왜? Scanner와 BufferedReader는 속도차이가 날까?
단순하게 BufferedReader는 버퍼크기가 크기도 하고, 정규식을 따로 검사하지않고 문자열 그대로 저장하기때문에 Scanner보다 빠르게 동작한다.