프로그래밍 언어/JAVA

StringBuffer 클래스

· 코딩마이데이

StringBuffer의 생성과 특징

StringBuffer 클래스도 java.lang 패키지에 포함되어 있으며, String 클래스와 같이 문자열을 다룹니다. String 객체의 경우 내부의 문자열을 수행할 수 없지만, StringBuffer 객체는 문자열을 저장하는 가변 버퍼를 가지고 있기 때문에 지정된 문자열의 수정가능합니다. 문자열의 크기가 늘어나면 내부 버퍼 크기를 자동 조절합니다.

StringBuffer sb = new StringBuffer("Java");

 

생성자 설명
StringBuffer() 초기 버퍼의 크기가 16인 스트링 버퍼 객체 생성
StringBuffer(charSequence seq) seq가 지정하는 일련의 문자들을 포함하는 스트림 버퍼 생성
StringBuffer(int capacity) 지정된 초기 크기를 갖는 스트링 버퍼 객체 생성
StringBuffer(String str) .지정된 스트림으로 초기화된 스트링 버퍼 객체 생성

 

StringBuffer의 활용

StringBuffer 클래스는 문자열에 대한 다양한 조작을 보여줄 수 있는 메소드를 제공합니다. StringBuffer 내에 문자열을 저장하는 버퍼의 크기가 자동으로 조절합니다.

메소드 설명
StringBugger append(String str) str 스트림은 스트링 버퍼에 덧붙입니다.
StringBuffer append(StringBuffer sb) str 스르림 버퍼를 현재의 스트링 버퍼에 덧붙입니다.
이 결과 현재 스트링 버퍼의 내용이 변합니다.
int capacity() 스트링 버처의 현재 크기 리턴
StringBuffer delete(int start, int end) start 위치에서 end 위치 앞까지 부분 문자열 삭제
StringBuffer insert(int offset, String str) str 스트링을 스트링 버퍼의 offset 위치에 삽입
StrintBuffer relpace(int start, int end, String str) 스트링 버퍼 내의 start 위치의 문자부터 end가 지정하는 문자 앞의 서버 스트링을 str로 대치
StringBuffer reverse() 스트링 버퍼 내의 문자들을 반대 순서로 변경
void setLength(int newLength)  스트링 버퍼 내의 문자열 길이를 newLength로 재설정. 현재 길이보다 큰 경우 널 문자(' ')로 채우며 작은 경우는 기존 문자열이 잘린다.

 

StringBuffer의 메소드 활용

 

StringBuffer 클래스 메소드 활용

public class StringBufferEx {
	public static void main(String[] args) {
		StringBuffer sb = new StringBuffer("This");
		
		sb.append(" is pencil"); // 문자열 덧붙이기
		System.out.println(sb);
		
		sb.insert(7, " my"); // "my" 문자열 삽입
		System.out.println(sb);
		
		sb.replace(8, 10, "your"); // "my"를 "your"로 변경
		System.out.println(sb);
		
		sb.delete(8, 13); // "your " 삭제
		System.out.println(sb);
		
		sb.setLength(4); // 스트링 버퍼 내 문자열 깊이 수정
		System.out.println(sb);
	}
}

실행 결과

This is pencil

This is my pencil

This is your pencil

This is pencil

This

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

Math 클래스  (0) 2025.03.18
StringTokenizer 클래스  (0) 2025.03.14
String 클래스  (0) 2025.03.11
Wrapper 클래스  (0) 2025.03.09
Object 클래스  (0) 2025.03.06