[JAVA] StringTokenizer

kathy·2023년 2월 3일
0

JAVA

목록 보기
1/3
post-thumbnail

StringTokenizer

기본적으로 구분자 집합에는 “\t\n\r\f” 를 사용

public class Solution {
		public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in);
		StringTokenizer st = new StringTokenizer(br.readLine());
		}
}

Constructor

ConstructorDescription
StringTokenizer(String str)매개변수로 받은 문자열을 기본 구분자(\t\n\r\f)로 분리
StringTokenizer(String str, String delim)매개변수로 받은 문자열을 특정 구분자(delim)로 분리
StringTokenizer(String str, String delim, boolean returnDelims)매개변수로 받은 문자열을 특정 구분자(delim)로 분리하되 returnDelims이 true면, 구분자도 token으로 포함, false면 구분자 제외

1. StringTokenizer(String str)

public class Solution {
		public static void main(String[] args) throws IOException{
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.nextToken()); // hello
		System.out.println(st.nextToken()); // is
		}
}

2. StringTokenizer(String str, String delim)

public class Solution {
		public static void main(String[] args) throws IOException{
		String test= "hello_my_name_is_kathy";
		StringTokenizer st = new StringTokenizer(test,"_");
		System.out.println(st.nextToken()); // hello
		System.out.println(st.nextToken()); // is
		}
}

3. StringTokenizer(String str, String delim, boolean returnDelims)

public class Solution {
		public static void main(String[] args) throws IOException{
		String test= "hello_my_name_is_kathy";
		StringTokenizer st = new StringTokenizer(test,"_",true);
		System.out.println(st.nextToken()); // hello
		System.out.println(st.nextToken()); // _
		}
}
public class Solution {
		public static void main(String[] args) throws IOException{
		String test= "hello_my_name_is_kathy";
		StringTokenizer st = new StringTokenizer(test,"_",false);
		System.out.println(st.nextToken()); // hello
		System.out.println(st.nextToken()); // is
		}
}

Method

TypeMethodDescription
intcountTokens()nextToken의 예외가 발생하기 전에 nextToken 메서드를 호출 할 수 있는 횟수 계산
booleanhasMoreToken()사용할 수 있는 토큰이 더 있는지 확인
booleanhasMoreElements()사용할 수 있는 토큰이 더 있는지 확인
objectnextElement()nextToken()과 비슷하지만 String이 아닌 Object를 반환
stringnextToken()다음 토큰을 String으로 반환
stringnextToken(String delim)특정 구분자(delim)를 가지고 구분하여 다음 토큰을 String으로 반환

1. countTokens() : int

nextToken의 예외가 발생하기 전에 nextToken 메서드를 호출 할 수 있는 횟수 계산

public static void main(String[] args) throws IOException {
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.countTokens()); // 5
	}

2. hasMoreToken() ≒ hasMoreElements() : boolean

사용할 수 있는 토큰이 더 있는지 확인

public static void main(String[] args) throws IOException {
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.hasMoreTokens()); // true
	}
public static void main(String[] args) throws IOException {
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		while (st.hasMoreTokens()) {
			System.out.println(st.nextToken());
		}
	}
/* 
hello
my
name
is
kathy 
*/

3. nextToken() : String

다음 토큰을 String으로 반환

public static void main(String[] args) throws IOException {
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.nextToken()); // hello
	}

4. nextToken(String delim) : String

특정 구분자(delim)를 가지고 구분하여 다음 토큰을 String으로 반환

public static void main(String[] args) throws IOException {
		String test= "hello_my_name_is_kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.nextToken("_")); // hello
	}

5. nextElement()

nextToken()과 비슷하지만 String이 아닌 Object를 반환

public static void main(String[] args) throws IOException {
		String test= "hello my name is kathy";
		StringTokenizer st = new StringTokenizer(test);
		System.out.println(st.nextElement()); // hello
	}

출처 :
StringTokenizer (Java Platform SE 7 )

profile
Here is future Backend Developer's Velog

0개의 댓글