java.util 패키지의 StringTokenizer 클래스
개요
StringTokenizer
클래스는 String 객체의 문자열을 특정한 구분 문자(Delimiter)로 여러 개의 토큰(Token) 문자열로 나눠준다. 구분 문자로는 특수 문자뿐 아니라 공백(space), 한 문자부터 여러 문자의 문자열로도 사용 가능하다. StringTokenizer
클래스는 Enumeration
인터페이스로 이용하였기 때문에, 나눠진 문자열은 열거형태로 존재한다.
StringTokenizer 생성자
생성자 | 설명 |
---|---|
StringTokenizer(String str) | 디폴트 생성자. |
StringTokenizer(String str, delim) | 구분 문자(delim)를 인자로 받는 생성자. |
StringTokenizer(String str, String delim, boolean returnDelims) | 구분 문자(delim)와 구분문자의 반환 여부를 인자로 받는 생성자. |
StringTokenizer 메소드
메소드 | 설명 |
---|---|
int countTokens | 나눠진 토큰의 수를 반환한다. |
boolean hasMoreElements() | 반환할 다음 요소가 있으면 true, 없으면 false를 반환한다. hasMoreTokens()와 동일하다. |
boolean hasMoreTokens() | 반환할 다음 토큰이 있으면 true, 없으면 false를 반환한다. |
Object hasMoreElements() | 나눠진 토큰의 수를 반환한다. Object를 반환하지만 실제는 String이다. |
String hasMoreTokens() | 나눠진 토큰의 수를 반환한다. |
String nextToken() | 다음 토큰을 반환한다. 이전 토큰은 제거한다. |
String nextToken(String delim) | 구분 문자(delim)를 변경 후 변경 다음 토큰을 반환한다. |
StringTokenizer 예제
예제 1)
package com.devkuma.tutorial.java.util;
import java.util.StringTokenizer;
public class StringTokenizerClass {
public static void main(String[] args) {
String str = "java,c,c++,c#,scala,xml,javascript";
StringTokenizer st = new StringTokenizer(str, ",");
while (st.hasMoreTokens()) {
String lang = st.nextToken();
System.out.println(lang);
}
}
}
실행 결과:
java
c
c++
c#
scala
xml
javascript
예제 2)
package com.devkuma.tutorial.javautil;
import java.util.StringTokenizer;
public class StringTokenizerClass2 {
public static void main(String[] args) {
String str = "java,c,c++,c#,scala,xml,javascript";
StringTokenizer st = new StringTokenizer(str, ",", true);
while (st.hasMoreTokens()) {
String lang = st.nextToken();
System.out.println(lang);
}
}
}
실행 결과:
java
,
c
,
c++
,
c#
,
scala
,
xml
,
javascript
최종 수정 : 2021-08-27