StringTokenizer
문자열을 우리가 원하는 구분자로 분해해주는 클래스
나눠진 문자열을 토큰(token)이라고 부른다.
StringTokenizer(String str) : 문자열 str을 기본 delimiter로 분리한다. 기본적으로 "\t \n \r "이다.
StringTokenizer(String str, String delim) : 특정 단어 delim으로 str을 분리한다.
StringTokenizer(String str, String delim, boolean returnDelims) : str을 특정 delim으로 분리하면서 delim을 token으로 포함할지 결정, true일시 포함 false일시 미포함
int countTokens() : 남아 있는 token의 개수를 반환
boolean hasMoreElements(), hasMoreTokens() : 다음의 token 반환 + 내부적으로 stringTokenizer이 어떤 위치의 토큰을 사용했는지 기억하고 그 다음 위치로 옮긴다.
Object nextElement(), String nextToken() : 다음의 토큰을 반환한다. 같은 값을 반환하지만 nextElements는 Object , nextToken()은 String을 반환한다.
기본 delim 분리 pass
특정 delim
String str = "hello-main+heee";
// '-' 와 '+' 로 나눈다
StringTokenizer stk = new StringTokenizer(str, "-+");
while(str.hasMoreTokens()){
sout(str.nextToken())
}
-> hello/main/heee
'-', '+'로 나눔
String split과 결과가 좀 다르게 나온다.
String str = "hello-main+heee-+last";
// '-' 와 '+' 로 나눈다
String tokens[] = str.split(-+)
for(int i = 0; i < tokens.length; i++){
sout(tokens[i]);
}
-> hello-main+heee / last
split은 정확히 '-+' 로 나눔
분리문구 delim까지 포함
String str = "hello-main+heee";
// '-' 와 '+' 로 나눈다
StringTokenizer stk = new StringTokenizer(str, "-+", true);
while(str.hasMoreTokens()){
sout(str.nextToken())
}
-> hello/ - / main / + /heee
'-', '+' 까지 포함해서 출력
'개발 > JAVA' 카테고리의 다른 글
Iterator (0) | 2022.07.11 |
---|---|
자바 8 정리 (0) | 2022.07.08 |
Junit - Assert 메소드 (0) | 2022.06.02 |
[JUNIT] 테스트 코드 연습[1] (0) | 2022.06.02 |
[JAVA] BufferedReader (0) | 2022.05.23 |