반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- Java
- 자바스크립트
- 정규식
- ArrayList
- CMD
- input
- vscode
- html
- javascript
- Button
- 이탈리아
- table
- HashMap
- js
- 자바
- 이클립스
- 문자열
- json
- list
- Eclipse
- IntelliJ
- CSS
- 배열
- string
- Array
- date
- Visual Studio Code
- replace
- 인텔리제이
- map
Archives
- Today
- Total
어제 오늘 내일
[Java StringTokenizer] 주요 메소드 정리와 활용 예제 본문
문자열을 구분자(delimiter)를 기준으로 분리해야 할 때 보통은 String.split()이나 Pattern.split()을 많이 사용합니다. 하지만 Java에서는 예전부터 제공되던 StringTokenizer 클래스도 문자열 분리에 활용할 수 있습니다. 레거시 클래스이긴 하지만, 간단한 토큰 분리 작업에는 여전히 사용하기 좋습니다.
1. StringTokenizer 클래스 개요
- 문자열을 구분자(delimiter) 기준으로 토큰(token) 단위로 분리
- 기본 구분자는 공백(스페이스, 탭, 줄바꿈)
- 커스텀 구분자 지정 가능 (예:
,,;,|)
2. 생성자
public StringTokenizer(String str)
public StringTokenizer(String str, String delim)
public StringTokenizer(String str, String delim, boolean returnDelims)
str: 분리할 문자열delim: 구분자 지정returnDelims:true이면 구분자 자체도 토큰으로 반환
3. 주요 메소드
boolean hasMoreTokens(): 다음 토큰이 있는지 확인String nextToken(): 다음 토큰 반환int countTokens(): 남은 토큰 개수 확인
4. 기본 사용 예제
import java.util.StringTokenizer;
public class StringTokenizerExample {
public static void main(String[] args) {
String input = "apple banana orange";
StringTokenizer st = new StringTokenizer(input);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
출력 결과:
apple
banana
orange
기본 구분자가 공백이므로 공백 기준으로 문자열이 나눠집니다.
5. 커스텀 구분자 사용 예제
import java.util.StringTokenizer;
public class StringTokenizerDelimiterExample {
public static void main(String[] args) {
String input = "apple,banana;orange|grape";
StringTokenizer st = new StringTokenizer(input, ",;|");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
출력 결과:
apple
banana
orange
grape
쉼표, 세미콜론, 파이프 기호 모두 구분자로 지정되어 처리됩니다.
6. 구분자도 포함시키는 예제
import java.util.StringTokenizer;
public class StringTokenizerReturnDelimExample {
public static void main(String[] args) {
String input = "Java,Python,C++";
StringTokenizer st = new StringTokenizer(input, ",", true);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
출력 결과:
Java
,
Python
,
C++
구분자 , 도 토큰으로 반환됩니다.
7. 활용 사례
- 간단한 문자열 분리 작업
- 여러 구분자가 섞여 있는 문자열 처리
- 파일 입력 시 토큰 단위 데이터 추출
정리
StringTokenizer는 간단히 문자열을 분리할 때 유용하지만, 정규표현식이 필요한 복잡한 분리 작업에는 String.split()이나 Pattern.split()을 쓰는 것이 더 좋습니다. 그래도 빠르고 가벼운 문자열 분리에 적합한 도구로 알아두면 유용합니다.
반응형
'IT > Java' 카테고리의 다른 글
| [Java HashSet] 초기화 방법 총정리 (0) | 2025.10.07 |
|---|---|
| [Java HashMap] 초기화 방법 총정리 (0) | 2025.10.07 |
| [Java Scanner] 주요 메소드 정리와 활용 예제 (0) | 2025.10.06 |
| [Java Matcher] replaceAll() - 정규식으로 문자열 치환하기 (0) | 2025.10.05 |
| [Java Matcher] group() - 매칭된 문자열 추출하기 (0) | 2025.10.05 |
Comments