Hello

Java StringBuffer 클래스의 메서드

by 볼빵빵오춘기

StringBuffer 클래스의 메서드

  • StringBuffer()
    16문자를 담을 수 있는 버퍼를 가진 StringBuffer 인스턴스를 생성한다.
더보기
StringBuffer sb = new StringBuffer();
 sb = ""

 

  • StringBuffer(int length)
    지정된 개수의 문자를 담을 수 있는 버퍼를 가진 StringBuffer 인스턴스를 생성한다.
더보기
StringBuffer sb = new StringBuffer(10);
 sb = ""

 

  • StringBuffer(String str)
    지정된 문자열 값(str)을 갖는 StringBuffer 인스턴스를 생성한다.
더보기
StringBuffer sb = new StringBuffer("Hi");
 sb = "Hi"

 

  • StringBuffer append(boolean b)
    StringBuffer append(char c)
    StringBuffer append(char[] str)
    StringBuffer append(double d)
    StringBuffer append(float f)

    StringBuffer append(int i)
    StringBuffer append(long l)
    StringBuffer append(Object obj)
    StringBuffer append(String str)

    매개변수로 입력된 값을 문자열로 변환하여 StringBuffer 인스턴스가 저장하고 있는 문자열의 뒤에 덧붙인다.
더보기
StringBuffer sb1 = new StringBuffer("abc");
StringBuffer sb2 = sb1.append(true);
sb1.append('d').append(10.0f);

StringBuffer sb3 = sb1.append("ABC").append(123);
 sb1 = "abctrued10.0ABC123"
 sb2 = "abctrued10.0ABC123"
 sb3 = "abctrued10.0ABC123"

 

  • int capacity()
    StringBuffer 인스턴스의 버퍼크기를 알려준다.
    length()는 버퍼에 담긴 문자열의 길이를 알려준다.
더보기
StringBuffer sb = new StringBuffer(100);
sb.append("abcd");
int bufferSize = sb.capacity();
int stringSize = sb.length();
bufferSize = 100
stringSize = 4

 

  • char charAt(int index)
    지정된 위치(index)에 있는 문자를 반환한다.
더보기
StringBuffer sb = new StringBuffer("abc");
char c = sb.charAt(2);
c = 'c'

 

  • StringBuffer delete(int start, int end)
    시작위치(start)부터 끝 위치(end) 사이에 있는 문자를 제거한다.
    단 끝 위치의 문자는 제외
더보기
StringBuffer sb1 = new StringBuffer("0123456");
StringBuffer sb2 = sb1.delete(3,6);
 sb1 = "0126"
 sb2 = "0126"

 

  • StringBuffer deleteCharAt(int index)
    지정된 위치(index)의 문자를 제거한다.
더보기
StringBuffer sb = new StringBuffer("0123456");
sb.deleteCharAt(3)
 sb = "012456"

 

  • StringBuffer insert(int pos, boolean b)
    StringBuffer insert(int pos, char c)
    StringBuffer insert(int pos, char[] str)
    StringBuffer insert(int pos, double d)
    StringBuffer insert(int pos, float f)
    StringBuffer insert(int pos, int i)
    StringBuffer insert(int pos, long l)
    StringBuffer insert(int pos, Object obj)
    StringBuffer insert(int pos, String str)

    두 번째 매개변수로 받은 값을 문자열로 변환하여 지정된 위치(pos)에 추가한다. 
    pos는 0부터 시작
더보기
StringBuffer sb = new StringBuffer("0123456");
sb.insert(4,'.');
 sb = "0123.456"

 

  • int length()
    StringBuffer인스턴스에 저장되어 있는 문자열의 길이를 반환한다.
더보기
StringBuffer sb = new StringBuffer("0123456");
int len = sb.length();
 len = 7

 

  • StringBuffer replace(int start, int end, String str)
    지정된 범위(start ~ end)의 문자들을 주어진 문자열로 바꾼다. 
    end위치의 문자는 범위에 포함되지 않는다. (start ≤ x < end)
더보기
StringBuffer sb = new StringBuffer("0123456");
sb.replace(3,6,"AB");
 sb = "012AB6"

 

  • StringBuffer reverse()
    StringBuffer 인스턴스에 저장되어 있는 문자열의 순서를 거꾸로 나열한다.
더보기
StringBuffer sb = new StringBuffer("0123456");
sb.reverse();
 sb = ""

 

  • StringBuffer()
    16문자를 담을 수 있는 버퍼를 가진 StringBuffer 인스턴스를 생성한다.
더보기
StringBuffer sb = new StringBuffer();
 sb = "6543210"

 

  • void setCharAt(int index, char ch)
    지정된 위치의 문자를 주어진 문자(ch)로 바꾼다.
더보기
StringBuffer sb = new StringBuffer("0123456");
sb.setCharAt(5,'k');
 sb = "01234k6"

 

  • void setLength(int newLength)
    지정된 길이로 문자열의 길이를 변경한다.
    길이를 늘리는 경우에 나머지 빈 공간을 널문자 '\u0000'로 채운다.
더보기
StringBuffer sb1 = new StringBuffer("0123456");
sb.setLength(5);

StringBuffer sb2 = new StringBuffer("0123456");
sb.setLength(10);

String str = sb2.toString().trim();
sb1 = "01234"
sb2 = "0123456   "
str = "0123456"

 

  • String toString()
    StringBuffer 인스턴스의 문자열을 String으로 반환한다
더보기
StringBuffer sb = new StringBuffer("0123456");
String str = sb.toString();
str = "0123456"

 

  • String subString(int start)
    String subString(int start, int end)

    지정된 범위 내의 문자열을 String으로 뽑아서 반환한다.
    시작위치(start)만 지정하면 시작위치부터 문자열 끝까지 뽑아서 반환한다.
더보기
StringBuffer sb = new StringBuffer("0123456");
String str1 = sb.subString(3);
String str2 = sb.subString(3,5);
str1 = "3456"
str2 = "34"

 

예제 코드

public class VarEx3 {
	public static void main(String[] args) {
		StringBuffer sb = new StringBuffer("01");
		StringBuffer sb2 = sb.append(23);
		sb.append('4').append(56);
		
		StringBuffer sb3 = sb.append(78);
		sb3.append(9.0);
		
		System.out.println("sb = " + sb); // sb = 0123456789.0
		System.out.println("sb2 = " + sb2); // sb2 = 0123456789.0
		System.out.println("sb3 = " + sb3); // sb3 = 0123456789.0
		
		System.out.println("sb = " + sb.deleteCharAt(10)); // sb = 01234567890
		System.out.println("sb = " + sb.delete(3, 6)); // sb = 01267890
		System.out.println("sb = " + sb.insert(3,"abc")); // sb = 012abc67890
		System.out.println("sb = " + sb.replace(6,sb.length(),"END")); // sb = 012abcEND

		System.out.println("capacity = " + sb.capacity()); // capacity = 18
		System.out.println("length = " + sb.length()); // length = 9
	}
}
sb = 0123456789.0
sb2 = 0123456789.0
sb3 = 0123456789.0
sb = 01234567890
sb = 01267890
sb = 012abc67890
sb = 012abcEND
capacity = 18
length = 9

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기