본문 바로가기
프로그래밍 언어/자바

자바 문자열 다루기 #2

by 블루데이제이 2022. 9. 12.
728x90
반응형

StringBuffer 클래스

StringBuffer 클래스의 기능은 String 클래스와 대부분 동일합니다. StringBuffer 클래스는 String클래스가 갖지 못하는 몇몇 장점을 가지고 있습니다. String보다 빠르다는 것과 문자열의 동적 조작이 가능하다는 것입니다.

주요 생성자

■ StringBuffer() : 버퍼의 크기가 16인 객체 생성

■ StringBuffer(int length) : 버퍼의 크기가 length인 객체 생성

■ StringBuffer(String str) : 주어진 문자열을 초기값으로 객체 생성

주요 메소드

■ StringBuffer append(모든형태의 데이터) : 문자열에 주어진 데이터 추가

■ StringBuffer delete(int start, int end) : start와 end사이의 문자열 제거

■ StringBuffer deleteCharAt(int index) : 해당하는 index의 문자 제거

package com.bluedayj;

public class SBuffer {

	public static void main(String[] args) {
		StringBuffer sb = new StringBuffer("Hello World");
		sb.append(" ").append("Hello Java");
		System.out.println(sb);
		
		sb.delete(11, 17);
		System.out.println(sb);
		
		sb.insert(11, ",");
		System.out.println(sb);
		
		sb.reverse();
		System.out.println(sb);
		
	}
}

StringTokenizer 클래스

StringTokenizer 클래스는 문자열을 어떤 특정한 문장을 기준으로 구분해 주는데 사용됩니다.

예를 들어 "Hello World Hello Java"라는 문자열을 공백으로 나누면 총 4개의 단어(중복)를 뽑아낼 수 있습니다.

 

주요 생성자

■ StringTokenizer(String str) : 주어진 문자열로 객체생성 \t, \n, \r, \f를 기준으로 문자열 사용

■ StringTokenizer(String str, String delim) : delim 문자열 기준으로 객체 생성

■ StringTokenizer(String str, String delim, boolean returnDelims) : delim 문자열 기준으로 객체 생성. retrunDelims가 true이면 delim 문자열도 토큰으로 간주

package com.bluedayj;

import java.util.StringTokenizer;

public class TokenTest {
	public static void main(String[] args) {
		String str = "Hello,World,Hello,Java";
		
		StringTokenizer st = new StringTokenizer(str, ",");
		System.out.println("토큰 수 : " + st.countTokens());
		System.out.println("문자열1 : " + st.nextToken());
		System.out.println("문자열2 : " + st.nextToken());
		System.out.println("문자열3 : " + st.nextToken());
		System.out.println("문자열4 : " + st.nextToken());
		System.out.println();
		
		
		st = new StringTokenizer(str, ",", true);
		System.out.println("토큰수 : " + st.countTokens());
		
		while(st.hasMoreTokens()) {
			System.out.println(st.nextToken());
		}
		
	}
}

 

StringTokenizer는 유용한 클래스입니다. 특히 네트워크상에서 프로토콜을 구현하는데 편리합니다.
728x90
반응형

'프로그래밍 언어 > 자바' 카테고리의 다른 글

날짜 다루기  (0) 2022.09.12
벡터와 해시테이블  (0) 2022.09.12
자바 문자열 다루기 #1  (0) 2022.09.12
자바 클래스와 객체 #6  (0) 2022.09.12
자바 클래스와 객체 #5  (0) 2022.09.12