JAVA

JAVA) StringTokenizer 클래스

starmk95 2020. 7. 13. 16:53

StringTokenizer 클래스는 문자열을 원하는 문자를 기준으로 슬라이싱하고, 슬라이싱된 문자열들을 순서대로 접근할 수 있게 도와준다. (구분 기준 문자를 지정하지 않았을 경우에는 공백(띄어쓰기)를 기준으로 슬라이싱한다.)

 

StringTokenizer 클래스의 핵심 메소드들은 다음과 같다.

 - countTokens() : 문자열이 슬라이싱되어 생성된 토큰의 개수를 반환

 - nextToken() : 다음 토큰을 반환

 - hasMoreTokens() : 다음 토큰이 남아있으면 true, 남아있지 않다면 false를 반환

 

cf) split의 경우 구분 기준 문자를 ""로 설정하면, 문자열을 문자(캐릭터)별로 슬라이싱해주지만

StringTokenizer의 경우에는 슬라이싱 하지 않고 기존 문자열 자체를 반환한다.

 

import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) {
    String sentence = "공백을 포함하고 있는 문자열입니다.";
    StringTokenizer st = new StringTokenizer(sentence); // 슬라이싱 기준 문자를 포함하지 않았으므로 공백을 기준으로 슬라이싱된다.
    while(st.hasMoreTokens(){
    	System.out.println(st.nextToken());
    	}
    }
}


/* 출력 결과
공백을
포함하고
있는
문자열입니다.
*/
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) {
    String sentence = "1,2,3,4,5,6,7";
    StringTokenizer st = new StringTokenizer(sentence, ","); // 슬라이싱 기준 문자를 포함하지 않았으므로 공백을 기준으로 슬라이싱된다.
    while(st.hasMoreTokens(){
    	System.out.println(st.nextToken());
    	}
    }
}


/* 출력 결과
1
2
3
4
5
6
7
*/