🔥 Vamos/Java

1029 | 자바의 정석 기초편 :: ch9-19~9-20

unikue 2022. 10. 30. 03:18

StringBuffer 메서드

메서드 예제 / 결과
StringBuffer() StringBuffer sb = new StringBuffer();
16문자를 담을 수 있는 버퍼를 가진 StringBuffer인스턴스 생성
StringBuffer(int length) StringBuffer sb = new StringBuffer(10);
StringBuffer(String str) StringBuffer sb = new StringBuffer("HI");
sb = "HI"
StringBuffer append(int i)
StringBuffer append(char c)
StringBuffer append(long l)
StringBuffer append(Object obj)
...
매개변수로 입력된 값을 문자열로 변환
StringBuffer sb = new StringBuffer ("abc");
StringBuffer sb2 = sb.append(true);
sb.append('d').append(10.0);
StringBuffer sb3 = sb.append("def").append(123);

sb = "abctrue10.0def123"
sb2 = "abctrue10.0def123"
sb3 = "abctrue10.0def123"
int capacity() StringBuffer sb = new StringBuffer (100);
sb.append("abcd");
int bufferSize = sb.capacity();
int stringSize = sb.length();

bufferSize = 100
stringSize = 4
char charAt(index) StringBuffer sb = new StringBuffer ("abc");
char c = sb.charAt(2);
c = 'c'
StringBuffer delet(int start, int end)
문자n개 제거

(*end글자는 수정에서 제외됨)

StringBuffer 반환이라 자기자신반환
StringBuffer sb = new StringBuffer ("0123456");
StringBuffer sb2 = sb.delete(3,6);
sb="0126"
sb2 = "0126"
StringBuffer deleteCharAt(int index)
문자 1개제거
StringBuffer sb = new StringBuffer("0123456");
sb.deleteChart(3);
sb="012456"
StringBuffer insert(int pos, double d)
StringBuffer insert(int pos, float f)
StringBuffer insert(int pos, Object obj)
...

append()는 맨뒤에 넣으니까 지정된 위치가 필요없었으나 insert는 지정위치필요
StringBuffer sb = new StringBuffer ("0123456");
sb.insert(4,'.');
sb="0123.456"
StringBuffer replace(int start, int end, String str)
(*end글자는 수정에서 제외됨)
StringBuffer sb = new StringBuffer("0123456");
sb.replace(3,6,"AB");
sb="012AB6"
StringBuffer reverse() StringBuffer sb = new StringBuffer("0123456");
sb.reverse();
sb="6543210"
void setCharAt(int index, char ch) StringBuffer sb = new StringBuffer("0123456");
sb.setCharAt(5,'o');
sb = 01234o6
void setLength(int newLength)

지정된 길이로 문자열 길이 변경시, 나머지 빈공간은 널문자 '\u0000'으로 채워짐
StringBuffer sb = new StringBuffer("0123456");
sb.setLength(5);

StringBuffer sb2= new StringBuffer("0123456");
sb2.setLength(10);
String str = sb2.toString().trim();

sb="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으로 뽑아서 반환.
시작만 지정하면 시작위치부터 끝까지 뽑아서 반환
StringBuffer sb = new StringBuffer ("0123456");
String str = sb.substring(3);
String str2 = sb.substring(3,5);

str = "3456"
str2 = "34"