JAVA 입/출력 성능 비교 (Scanner vs BufferedReader vs System.in.read())
Coding Test/Algorithm·2026. 1. 11.
1. System.in.read() 특징저수준 입력 방식으로 1바이트씩 읽음.입력값은 **바이트(정수, ASCII 코드 값)**로 반환됨.처리 속도가 빠르지만, 사용하기 불편함.반환값: 0 ~ 255 (ASCII 값)OS → JVM → 1바이트 읽기호출할 때마다 시스템 콜 발생 가능 장점단순성입력 데이터를 바이트 단위로 바로 처리할 수 있음.별도 라이브러리 없이 간단히 사용 가능.성능최소한의 기능만 제공하므로 오버헤드가 거의 없음.빠른 속도가 필요할 때 적합.유연성직접 바이트 단위 처리가 필요하거나, 특정한 입력 형식(예: 비정형 데이터)을 읽을 때 유리. 단점사용하기 불편함숫자나 문자열로 변환해야 하는 추가 작업이 필요함.여러 문자를 처리하려면 반복문이나 추가적인 처리 코드가 필요.유니코드/다중 바이트..