Back-End/Java

[자바/JAVA] 문자열 분리 (StringTokenizer) 🔥

728x90

평소에 많이 사용되지만 본인은 자주 사용하지 않았던 StringTokenizer을 정리해보려고 한다.

 

StringTokenizer는 하나의 문자열을 여러 개의 문자열로 분리하기 위해 사용한다.

문자열을 분리하기 위한 기준 문자를 구분자라고 한다. 구분자로 분리된 문자열을 토큰이라고 함

 

StringTokenizer는 항상 문자 타입을 리턴하기 때문에 숫자로 사용 시에는 Integer.parseInt()를 사용하여 파싱 해서 사용해야 한다.

복잡한 형태의 구분자를 사용해서 문자열을 나눌 시에는 정규식을 사용하는 메서드를 사용하는 것이 좋다. (split, Scanner)

 

생성자

StringTokenizer(String str) 구분자를 받지 않는 생성자
StringTokenizer(String str, String delim) 구분자를 기준으로 문자열을 나누는 StringTokenizer 생성
StringTokenizer(String str, String delimiter, boolean returnDelims) 구분자를 기준으로 문자열을 나누는 StringTokenizer 생성(구분자도 토큰으로 간주)

메서드 

int countTokens() 전체 토큰의 수를 리턴함
String nextToken() 다음 토큰을 리턴함
boolean hasMoreTokens() 토큰이 남아있는지 확인

사용 예제  🎉

import java.util.StringTokenizer;

public class StringTokenizerEx1 {
	public static void main(String[] args) {
		String source = "100,200,300,400";
		StringTokenizer st = new StringTokenizer(source, ",");
		
		while(st.hasMoreTokens()) { // 토큰이 남아있는지 체크
			System.out.println(st.countTokens()); // 남아있는 토큰
			System.out.println(st.nextToken()); // 다음 토큰 반환
		}
	}
}

결과 🎉

 

728x90

'Back-End > Java' 카테고리의 다른 글

[Java/자바] BigDecimal 정리  (0) 2021.05.14
[자바/JAVA] 래퍼 클래스(Wrapper Class)  (0) 2021.02.02
[자바/JAVA] StringBuffer / StringBuilder  (0) 2021.02.02
[자바/JAVA] String 클래스  (0) 2021.02.01