[Day 7 | Java] StringTokenizer

y♡ding·2024년 10월 22일
0

데브코스 TIL

목록 보기
32/163

문자열을 구분할 때 선택지

  • StringTokenizer경량화된 문자열 분리 도구로 간단한 문자열 분리 작업에 적합하지만, 자바 1.4 이후로는 split() 메서드정규 표현식을 활용하는 방법이 더 권장됩니다.
  • 여전히 구분자를 기준으로 문자열을 간단히 분리할 때는 유용하며, 성능이 중요할 때 경량화된 StringTokenizer가 유리할 수 있습니다.

StringTokenizersplit() 비교

특징StringTokenizerString.split()
도입 시기자바 1.0자바 1.4
구분자 처리개별 문자로 처리정규 표현식 사용 가능
빈 토큰 처리무시됨빈 토큰을 포함
성능더 빠름더 유연하지만 약간 느릴 수 있음
기능경량화된 기본 문자열 분리정규식을 지원하여 더 많은 기능 제공
대체 여부최신 자바에서 권장되지 않음권장됨

수업 코드

package com.util1;

import java.util.Arrays;
import java.util.StringTokenizer;

public class StringTokenizerEx02 {
    public static void main(String[] args) {
        String strData = "사과&참외&&수박&&&딸기";

        // 데이터가 없으면 제거
        StringTokenizer st = new StringTokenizer(strData, "&");
        System.out.println(st.countTokens());

        while (st.hasMoreTokens()) {
            System.out.print(st.nextToken());
        }
        System.out.println("/");
        
        // 발견할 때마다 자름 [사과, 참외, , 수박, , , 딸기]
        String[] datas = strData.split("&");
        System.out.println(datas.length);
        System.out.println(Arrays.toString(datas));
    }
}


📌 StringJoiner

  • 자바에서 문자열을 연결하는 방법 중 하나

<수업코드>

package com.util1;

import java.util.StringJoiner;

public class StringJoinerEx01 {
    public static void main(String[] args) {
        // 문자열 연결 방법
        // 1. + 연산자를 이용한 문자열 연결
        String fruits1 = "사과" + "," + "수박" + "," + "딸기" + "," + "참외";
        System.out.println(fruits1);  // 출력: 사과,수박,딸기,참외

        // 2. String.concat() 메서드를 이용한 문자열 연결
        String fruits2 = "사과".concat(",").concat("수박").concat(",").concat("딸기").concat(",").concat("참외");
        System.out.println(fruits2);  // 출력: 사과,수박,딸기,참외

        // 3. String.join() 메서드를 이용한 문자열 연결
        String fruits3 = String.join(",", "사과", "수박", "딸기", "참외");
        System.out.println(fruits3);  // 출력: 사과,수박,딸기,참외

        // 4. String.format() 메서드를 이용한 문자열 연결
        String fruits4 = String.format("%s,%s,%s,%s", "사과", "수박", "딸기", "참외");
        System.out.println(fruits4);  // 출력: 사과,수박,딸기,참외

        // 5. StringJoiner를 이용한 문자열 연결
        StringJoiner sj = new StringJoiner(",");
        sj.add("사과").add("수박").add("딸기").add("참외");
        System.out.println(sj.toString());  // 출력: 사과,수박,딸기,참외
    }
}

0개의 댓글

관련 채용 정보