자바 입력 Class ( Scanner, BufferedReader, String Tokenizer)
- BufferedReader, StringTokenizer은 문자열로 활용하기 위하여 사용
- BufferedReader를 사용하는 것이 Scanner를 사용하는 것보다 빠르다.
- BufferedReader는 문자열에 최적화
StringTokenizer 사용목적
- BufferedReader는 잘라서 배열과 같이 인덱스를 사용하여 접근 가능
- StringTokenizer는 공백이 있다면 뒤에 문자열이 공백 자리를 땡겨 채우도록 함
- StringTokenizer가 BufferedReader보다 빠르게 사용될 수 있음
- 문자열을 자르기 위해 split을 사용할땐, split은 정규식을 기반으로 자르는 로직으로서 내부는 복잡하지만 String Tokenizer의 nextToken()메소드는 단순히 공백 자리를 땡겨 채우는 것이기때문에 속도 차이가 난다.
- 정규식이나 인덱스 접근과 같은 처리가 필요없다면 StringTokenizer를 사용하는 것이 효율적이다.
String Tokenizer 사용법
- 자바에서는 String을 token단위로 끊어주는 StringTokenizer 클래스를 제공
- delimiter를 사용하여 원하는 값으로 끊어 출력할 수 있다.
ex) StringTokenizer st = new StringTokenizer("a/b/c", "/")
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
}
을 하였을때 출력 값은
a
b
c
가 된다.
출처 : https://wkimdev.github.io/java/2018/04/06/java-io-bufferedreader/
'Java' 카테고리의 다른 글
배열(Array), Arrays sort, toString (0) | 2022.08.21 |
---|---|
String vs StringBuilder 속도차이 (0) | 2022.08.21 |
Integer.parseInt() vs Integer.valueOf() 차이 (0) | 2022.08.18 |
Java 사용의 이유 (장점) (0) | 2022.08.17 |
컬렉션 (0) | 2022.08.13 |