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는 유용한 클래스입니다. 특히 네트워크상에서 프로토콜을 구현하는데 편리합니다.
'프로그래밍 언어 > 자바' 카테고리의 다른 글
날짜 다루기 (0) | 2022.09.12 |
---|---|
벡터와 해시테이블 (0) | 2022.09.12 |
자바 문자열 다루기 #1 (0) | 2022.09.12 |
자바 클래스와 객체 #6 (0) | 2022.09.12 |
자바 클래스와 객체 #5 (0) | 2022.09.12 |