StringTokenizer 클래스란?
자바의 StringTokenizer
클래스는 문자열을 특정 구분자를 기준으로 나누는 기능을 제공하는 클래스입니다.
과거에는 문자열을 토큰 단위로 분리할 때 많이 사용되었으나, 최근에는 split()
메서드나 String.split()
과 같은 기능이 더 많이 활용됩니다.
StringTokenizer 클래스 사용법
StringTokenizer
는 java.util.StringTokenizer
패키지에 포함되어 있으며, 기본적인 사용 방법은 다음과 같습니다.
1. 생성자
StringTokenizer(String str)
: 공백을 기준으로 문자열을 분리StringTokenizer(String str, String delim)
: 지정한 구분자(delim
)를 기준으로 문자열을 분리StringTokenizer(String str, String delim, boolean returnDelims)
: 구분자도 토큰으로 포함할지 여부를 설정
2. 주요 메서드
hasMoreTokens()
: 남아 있는 토큰이 있는지 확인nextToken()
: 다음 토큰을 반환countTokens()
: 총 토큰 개수 반환
StringTokenizer 예제
import java.util.StringTokenizer;
public class StringTokenizerExample {
public static void main(String[] args) {
String text = "Java,String,Tokenizer,Example";
// 구분자를 ","로 설정
StringTokenizer st = new StringTokenizer(text, ",");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
위 코드를 실행하면 문자열이 쉼표(,
)를 기준으로 나뉘어 출력됩니다.
StringTokenizer와 split() 비교
최근에는 split()
메서드를 더 많이 사용하는데, 그 차이점은 다음과 같습니다.
StringTokenizer
는 구분자로 빈 문자열을 반환하지 않음split()
은 정규 표현식을 사용할 수 있음
public class SplitExample {
public static void main(String[] args) {
String text = "Java,String,Tokenizer,Example";
// split 사용
String[] tokens = text.split(",");
for (String token : tokens) {
System.out.println(token);
}
}
}
위의 split()
을 이용하면 더 직관적으로 문자열을 나눌 수 있습니다.
마무리
StringTokenizer
클래스는 문자열을 쉽게 나눌 수 있는 기능을 제공하지만, 최근에는 split()
이 더 널리 사용됩니다.
따라서 코드의 유지보수성과 확장성을 고려한다면 split()
을 사용하는 것이 일반적입니다.
'Software > Java' 카테고리의 다른 글
[Java] LocalDate 클래스에 대한 설명과 예제 (1) | 2025.02.13 |
---|---|
[Java] Calendar 클래스에 대한 설명과 예제 코드 (1) | 2025.02.12 |
[Java] Math.random()을 이용해 로또번호 생성 프로그램 만들기. (1) | 2025.02.10 |
[Java] 인터페이스(interface)에 대한 설명과 예시 (1) | 2025.02.07 |
[Java] 오버라이드(Override)와 오버라이딩(Overriding) (1) | 2025.02.06 |