Archives
Recent Posts
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
관리 메뉴

개발도생's Blog

[Java][Class] StringTokenizer 본문

Java/Class

[Java][Class] StringTokenizer

개발도생 2022. 12. 2. 21:09

평소 유용하게 사용하고 있는 객체 StringTokenizer를 공부해봤다.

 

StringTokenizer Class는,

단순하게 표현한다면 문자들을 토큰화 시켜준다고 이해하면 편할 것 같다.

 

토큰으로 분리된 문자들을 StringTokenizer Class에 저장해두었다가 반환해준다.

 

StringTokenizer Class를 사용하기 전에!

  1. StringTokenizer는 문자열을 토큰으로 나누는 객체다.
  2. java.util에 포함된 자체 Class이기 때문에 import를 한 후 바로 사용이 가능하다.

 


StringTokenizer 생성자

StringTokenizer를 사용할 때 3가지 방법으로 사용할 수 있다.

// 1. 띄어쓰기 기준으로 문자열을 분리
StringTokenizer st = new StringTokenizer("문자열")

// 2. 구분자(delim)를 기준으로 문자열을 분리
StringTokenizer st = new StringTokenizer("문자열","구분자")

/*
 * 3.구분자를 기준으로 문자열을 분리할 때 구분자도 토큰으로 넣으면(true)
 * 구분자를 분리된 문자열 토큰에 포함 시키지 않는다면(false)
 * default : false 
 */
StringTokenizer st = new StringTokenizer("문자열","구분자", true/false)

1. 문자열을 띄어쓰기 기준으로 분리하는 방법

public class StringTokenizer {

    public static void main(String[] args) {
        StringTokenizer st = new StringTokenizer("반갑습니다 저는 홍길동입니다 잘 부탁드립니다");

        while (true) {
            System.out.println(st.nextToken());
        }
    }
}
/*
 * 분리된 토큰을 nextToken() 메서드를 사용해 순서대로 반환하도록 했다.
 */

반갑습니다
저는
홍길동입니다
잘
부탁드립니다

 

2. 구분자(delim)를 기준으로 분리하는 방법

public class StringTokenizer {

    public static void main(String[] args) {
        StringTokenizer st = new StringTokenizer("안녕하세요,반갑습니다,감사합니다", ",");

        while (true) {
            System.out.println(st.nextToken());
        }
    }
}
안녕하세요
반갑습니다
감사합니다

 

3. true/false를 사용해 구분자를 포함시켜주는 방법

public class StringTokenizer {

    public static void main(String[] args) {
        StringTokenizer st = new StringTokenizer("안녕하세요,반갑습니다,감사합니다", ",", true);

        while (true) {
            System.out.println(st.nextToken());
        }
    }
}
// 구분자(,)까지 토큰에 저장되어 반환된 것을 확인할 수 있다.

안녕하세요
,
반갑습니다
,
감사합니다

StringTokenizer 메서드

countTokens() - 토큰의 갯수를 반환한다.
nextToken() - 다음 토큰을 반환한다.
- 이전 토큰은 제거된다.
nextToken(String delim) - 구분문자(delimiter)를 delim으로 바꾼 후 바뀐 다음 토큰을 반환한다.
EX) "안녕하세요!1반갑습니다", "!1" 로 구분을 해준 후 
st.nextToken("!")으로 출력하게 되면
"안녕하세요", "1반갑습니다" 로 반환된다.
hasMoreTokens() - 리턴할 다음 토큰이 있다면 true로 이후 토큰이 없으면 false로 반환된다.

 


 

 

혹시나 더 많은 정보를 공유해주실 수 있거나, 해당 클래스에 중요한 내용이 빠져있다면 댓글로 공유해주시면 감사하겠습니다.

 

더 깊이 공부해서 보다 좋은 내용과 유익한 정보를 제공할 수 있도록 하겠습니다!

 

 

'Java > Class' 카테고리의 다른 글

[Java][Class] Random  (0) 2023.03.20
클래스(Class), 객체(Object), 인스턴스(Instance)  (0) 2022.12.20
[Java][Class] BufferedWriter  (0) 2022.12.15
[Java][Class] StringBuilder  (0) 2022.12.09
[Java][Class] Bufferedreader  (0) 2022.11.29
Comments