Java
[Java] StringTokenizer
happyhelen
2021. 8. 26. 19:39
백준에서 BufferedReader 로 입력 받아서 문제풀다가 띄어쓰기로 구분해서 입력받고 싶어서 찾아본 개념이다
StringTokenizer 은 클래스로 문자열을 지정한 구분자를 기준으로 파싱할 때 사용한다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class No2_StringTokenizer {
public static void main(String[] args) throws IOException {
// StringTokenizer 생성 및 입력받기(이번엔 BufferedReader)
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(in.readLine(), " ");
System.out.println("총 토큰의 개수: "+ st.countTokens());
// 토큰 꺼내기(Object, String)
String nextElement = st.nextElement().toString(); // Object 반환
System.out.println(nextElement);
String nextToken = st.nextToken(); // String 반환
System.out.println(nextToken);
// 토큰 배열에 넣기(hasMoreTokens 불린 사용)
boolean hasMoreTokens = st.hasMoreTokens();
int index =0;
String[] strArray = new String[st.countTokens()];
while(hasMoreTokens) {
strArray[index] = st.nextToken();
index++;
}
}
}
++ StringTokenizer( String str, String delim, boolean flag) : flag 는 구분자(delim) 자체도 토큰으로 인식할지 여부