BufferedReader, StringTokenizer 는 문자열로 활용하기 위하여 사용. BufferedReader를 사용하는 것이 Scanner를 사용하는 것보다 빠르다.
BufferedReader는 문자열에 최적화 되어 있음.
BufferedReader
readLine() 입력값으로 들어온 데이터를 한줄로 읽어서 String으로 바꾸는 메소드 /단, 무조건 한줄만 읽는다
close() 입력작없이 끝나면 close 로 입력스트림을 닫고 사용하던 자원을 해제
+ 추가적으로 BufferedReader를 사용하려면 예외처리를 해주어야한다 IOException throws처리
BufferedWriter
write() 출력할 내용 담기
flush() 버퍼를 비워내는 동시에 콘솔에 출력 /write()만 사용한다고 콘솔에 출력되는게 아니라, 반드시 flush를 써줘야햐 한다
close() 출력이 끝나면 close로 스트림을 닫음
StringTokenizer
BufferedReader는 잘라서 배열과 같이 인덱스를 사용하여 접근하여 사용.
StringTokenizer는 공백이 있다면 뒤에 문자열이 공백 자리를 땡겨 채우도록 한다.
StringTokenizer가 BufferedReader보다 빠르게 사용될 수 있다.
문자열을 자르게 위해 split을 사용할땐, split은 정규식을 기반으로 자르는 로직으로서 내부는 복잡하다. 그에 비해 StringTokenizer의 nextToken()메소드는 단순히 공백 자리를 땡겨 채우는 것이다. 그렇기 때문에 속도 차이가 날 수 밖에 없다.
정규식이나 인덱스 접근과 같은 처리가 필요없다면 StringTokenizer를 사용하는 것이 효율적이
'Back Dev > JAVA' 카테고리의 다른 글
Static (정적변수와 메소드) (0) | 2021.08.06 |
---|---|
JAVA환경에서 CMD 명령어 실행 (0) | 2020.11.05 |
날짜비교 (0) | 2020.03.31 |
JAVA 문자열비교 (0) | 2019.07.26 |
파일확장자 추출(부제: 문자열자르기) (0) | 2019.07.04 |