logo

Java의 StringTokenizer

  1. 스트링토크나이저
  2. StringTokenizer의 메서드
  3. StringTokenizer의 예

그만큼 java.util.StringTokenizer 클래스를 사용하면 문자열을 토큰으로 나눌 수 있습니다. 문자열을 끊는 간단한 방법입니다. Java의 레거시 클래스입니다.

StreamTokenizer 클래스처럼 숫자, 인용된 문자열, 식별자 등을 구별하는 기능을 제공하지 않습니다. I/O 장에서 StreamTokenizer 클래스에 대해 논의할 것입니다.

StringTokenizer 클래스에서 구분 기호는 생성 시 또는 토큰에 하나씩 제공될 수 있습니다.

Java의 StringTokenizer

StringTokenizer 클래스의 생성자

StringTokenizer 클래스에는 3개의 생성자가 정의되어 있습니다.

스레드 동기화
건설자설명
StringTokenizer(문자열 문자열)지정된 문자열로 StringTokenizer를 생성합니다.
StringTokenizer(문자열 str, 문자열 delim)지정된 문자열과 구분 기호를 사용하여 StringTokenizer를 생성합니다.
StringTokenizer(문자열 str, 문자열 delim, 부울 returnValue)지정된 문자열, 구분 기호 및 returnValue를 사용하여 StringTokenizer를 생성합니다. 반환 값이 true인 경우 구분 기호 문자는 토큰으로 간주됩니다. false인 경우 구분 기호 문자는 토큰을 구분하는 역할을 합니다.

StringTokenizer 클래스의 메서드

StringTokenizer 클래스의 6가지 유용한 메서드는 다음과 같습니다.

Java의 StringTokenizer
행동 양식설명
부울 hasMoreTokens()사용 가능한 토큰이 더 있는지 확인합니다.
문자열 nextToken()StringTokenizer 개체에서 다음 토큰을 반환합니다.
문자열 nextToken(문자열 delim)구분 기호를 기반으로 다음 토큰을 반환합니다.
부울 hasMoreElements()hasMoreTokens() 메소드와 동일합니다.
객체 nextElement()nextToken()과 동일하지만 반환 유형이 Object입니다.
정수 개수토큰()총 토큰 수를 반환합니다.

StringTokenizer 클래스의 예

공백을 기반으로 'my name is khan'이라는 문자열을 토큰화하는 StringTokenizer 클래스의 예를 살펴보겠습니다.

Simple.java

 import java.util.StringTokenizer; public class Simple{ public static void main(String args[]){ StringTokenizer st = new StringTokenizer('my name is khan',' '); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } } 

산출:

 my name is khan 

위의 Java 코드는 StringTokenizer 클래스와 해당 메서드 hasMoreTokens() 및 nextToken()의 사용을 보여줍니다.

StringTokenizer 클래스의 nextToken(String delim) 메소드 예시

Test.java

 import java.util.*; public class Test { public static void main(String[] args) { StringTokenizer st = new StringTokenizer('my,name,is,khan'); // printing next token System.out.println('Next token is : ' + st.nextToken(',')); } } 

산출:

 Next token is : my 

참고: StringTokenizer 클래스는 이제 더 이상 사용되지 않습니다. String 클래스나 java.util.regex 패키지에 속한 Pattern 클래스의 Split() 메소드를 사용하는 것이 좋습니다.

StringTokenizer 클래스의 hasMoreTokens() 메서드 예

이 메소드는 토크나이저 문자열에서 더 많은 토큰을 사용할 수 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

StringTokenizer1.java

 import java.util.StringTokenizer; public class StringTokenizer1 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Demonstrating methods from StringTokenizer class',' '); /* Checks if the String has any more tokens */ while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } } 

산출:

소프트웨어 테스팅의 종류
 Demonstrating methods from StringTokenizer class 

위의 Java 프로그램은 StringTokenizer 클래스의 hasMoreTokens() 및 nextToken() 두 가지 메소드를 사용하는 방법을 보여줍니다.

StringTokenizer 클래스의 hasMoreElements() 메서드 예

이 메소드는 StringTokenizer 클래스의 hasMoreTokens() 메소드와 동일한 값을 반환합니다. 유일한 차이점은 이 클래스가 Enumeration 인터페이스를 구현할 수 있다는 것입니다.

StringTokenizer2.java

 import java.util.StringTokenizer; public class StringTokenizer2 { public static void main(String args[]) { StringTokenizer st = new StringTokenizer('Hello everyone I am a Java developer',' '); while (st.hasMoreElements()) { System.out.println(st.nextToken()); } } } 

산출:

 Hello everyone I am a Java developer 

위의 코드는 hasMoreElements() 메소드의 사용을 보여줍니다.

StringTokenizer 클래스의 nextElement() 메서드 예

nextElement()는 토크나이저 문자열에서 다음 토큰 객체를 반환합니다. Enumeration 인터페이스를 구현할 수 있습니다.

StringTokenizer3.java

 import java.util.StringTokenizer; public class StringTokenizer3 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Hello Everyone Have a nice day',' '); /* Checks if the String has any more tokens */ while (st.hasMoreTokens()) { /* Prints the elements from the String */ System.out.println(st.nextElement()); } } } 

산출:

 Hello Everyone Have a nice day 

위의 코드는 nextElement() 메소드의 사용을 보여줍니다.

StringTokenizer 클래스의 countTokens() 메서드 예

이 메서드는 토크나이저 문자열에 있는 토큰 수를 계산합니다.

StringTokenizer4.java

 import java.util.StringTokenizer; public class StringTokenizer3 { /* Driver Code */ public static void main(String args[]) { /* StringTokenizer object */ StringTokenizer st = new StringTokenizer('Hello Everyone Have a nice day',' '); /* Prints the number of tokens present in the String */ System.out.println('Total number of Tokens: '+st.countTokens()); } } 

산출:

 Total number of Tokens: 6 

위의 Java 코드는 StringTokenizer() 클래스의 countTokens() 메서드를 보여줍니다.