반응형
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 | 31 |
Tags
- 이클립스
- IntelliJ
- map
- 인텔리제이
- vscode
- json
- date
- js
- Button
- 문자열
- javascript
- 자바
- CSS
- replace
- string
- list
- CMD
- Array
- 자바스크립트
- table
- Java
- HashMap
- 배열
- ArrayList
- 이탈리아
- input
- 정규식
- Eclipse
- Visual Studio Code
- html
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 Scanner] 주요 메소드 정리와 활용 예제 (0) | 2025.10.06 |
---|---|
[Java Matcher] replaceAll() - 정규식으로 문자열 치환하기 (0) | 2025.10.05 |
[Java Matcher] group() - 매칭된 문자열 추출하기 (0) | 2025.10.05 |
[Java Matcher] find() - 문자열에서 패턴 찾기 (0) | 2025.10.04 |
[Java Matcher] matches() - 문자열 전체가 패턴과 일치하는지 확인하기 (0) | 2025.10.04 |
Comments