StringTokenizer
StringTokenizer 클래스는 문자열을 직접 지정한 구분자로 문자열을 쪼개는 클래스이다.
그렇게 쪼개진 문자열을 토큰(toekn)이라 부른다.
ex) 우선 실행을 위해서는
import java.util.StringTokenizer;
를 최상단에 적어줘야 한다.
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args){
String str = "This is a string example using StringTokenizer";
StringTokenizer tokenizer = new StringTokenizer(str);
System.out.println(str);
System.out.println();
System.out.println("total tokens:"+tokenizer.countTokens());
while(tokenizer.hasMoreTokens()){
System.out.println(tokenizer.nextToken());
}
System.out.println("total tokens:"+tokenizer.countTokens());
}
}
위와 같은 코드를 IntelliJ에서 실행하게 되면,
total tokens:7
This
is
a
string
example
using
StringTokenizer
total tokens:0
와 같은 값이 나오는데 하나하나 설명해보겠다.
우선 첫번째
String str = "This is a string example using StringTokenizer";
str => "This is a string ~~ "의 문장을 string타입의 str이라는 변수에 할당하게 된다.
* 이때 할당이라는 표현은 저장이라고 이해해도 된다.
str변수에 할당한 후
두번째,
StringTokenizer tokenizer = new StringTokenizer(str)
StringTokenizer라는 클래스에 tokenizer라는 변수를 선언하고 => 그안에 StringTokenizer(str) 값을 저장한다
세번째,
System.out.println(str);
System.out.println();
System.out.println("total tokens:"+tokenizer.countTokens());
str의 값은
this is a string example using stringtokenizer의 문자열인 7이 되어
total tokens:7 이 출력되고.
while(tokenizer.hasMoreTokens()){
System.out.println(tokenizer.nextToken());
구문에 의해
This
is
a
string
example
using
StringTokenizer 가 출력된다.
System.out.println("total tokens:"+tokenizer.countTokens());
마지막 결과값은 total tokens:0 가 출력된다.
StringTokenizer에서 자주사용하는 매서드로는
int countTokens()
= 남아있는 token의 개수를 반환함. *전체 토큰의 개수가아닌 현재 남아있는 토큰의 개수
boolean hasMoreElements(), boolean hasMoreTokens()
= 현재 위치 뒤에 있는 문자열에서 하나 이상의 토큰을 사용 할 수 있는 경우 true 반환, 그렇지 않으면 false를 반환
Object nextElement(), String nextToken()
= 다음의 토큰을 반환하게 된다.
nextElemnet는 object를 // nextToken은 String을 반환한다.
'JAVA' 카테고리의 다른 글
JSON 직렬화, 역직렬화 Convert Java Object to JSON (0) | 2023.01.13 |
---|---|
객체지향 프로그래밍 - 클래스(Class)와 객체(Object) // (개발자 기초용어) *알기쉽게 정리 (2) | 2022.12.27 |
StringBuffer 와 String 의 차이점? (0) | 2022.12.26 |
Java 문자열 뒤집기 StringBuilder.reverse() (Reverse Stirng ) (0) | 2022.12.26 |
StringBuilder / StringBuffer 클래스 및 자주 쓰이는 매서드 정리 (0) | 2022.12.21 |
댓글