BufferedReader 클래스의 메서드로 입력을 읽어들일 경우 , 입력을 라인 단위로 읽어 들일 수 밖에 없음.
띄어쓰기(스페이스) 혹은 따옴표 기준으로 문자열을 분리하거나 싶을 때가 있을 때 사용하면 유용함
StringTokenizer 생성하는 방식에는 3가지가 존재함
첫 번째 방법은 띄어쓰기 기준으로 문자열이 나눠지게 됨
두 번째의 경우는 사용자가 명시한 구분자로 문자열을 구분하고,
세 번째는 사용자가 명시한 구분자 + 마지막 인자에 true OR false 의 값을 설정할 수 있음 true 일 경우 구분자도 토큰으로 취급 즉, 구분자도 포함하는 것
false일 경우는 반대
이외에도
boolean 타입의 hasMoreTokens() 메서드는 남아 있는 토큰이 있으면 true를 리턴하고 더 이상 토큰이 없으면 false를 리턴.. 등등이 존재함
또한 구분자는 하나 뿐만 아니라 여러개를 넣어서 사용할 수 있음
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.Set;
import java.util.StringTokenizer;
public class Set_1269 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()); // 읽어들이는 문자열을 공백으로 토큰으로 저장
int a = Integer.parseInt(st.nextToken()); // 읽어들여서 st객체에 저장된 토큰 1을 반환하고 정수로 변환하여 변수 a에 저장
int b = Integer.parseInt(st.nextToken());