*JAVA*

[java] StringBuffer, StringBuilder

깐부로부터 2021. 11. 21. 00:47

문자열 결합 연산 +

String은 내부의 문자열을 수정할 수 없다. (불변클래스)

문자열을 추가하거나 삭제해서 수정시 또다른 객체를 생성. 메모리의 불필요한 낭비가 발생

그것을 보완해서 나온것이 StringBuffer/Stringbuilder

 

 

 

- StringBuffer

버퍼(buffer : 데이터를 임시로 저장하는 메모리)에 문자열을 저장한다.

버퍼 내부에서 추가, 수정, 삭제 작업을 할 수 있다.

멀티 스레드환경에서 사용가능

 

- StringBuilder

StringBuffer와같이 버퍼에 문자열을 저장하고 추가,수정,삭제 작업 모두 가능하다.

단 하나 차이점은 단일 스레드환경에서 사용 가능

 

 

 

<StringBuffer/StringBuilder의 메소드>

 

- append() : 문자열데이터 끝부분은 문자열 추가

- insert(int offset, ....) : 문자열 중간에 삽입

- delete(int start, int end) :  start에서 end이전까지 문자열 삭제

- deletecharAt(int index) : 인덱스에 해당하는 문자 하나 삭제

- replace(int start, int end, String str) : start부터 end이전까지 문자열(str)로 대체

- StringBuilder reverse() : 문자열 순서 뒤집기

- setCharAt(int index, char ch) : 특정 인덱스에 있는 하나의 문자를 특정 문자로(ch)로 대체

 

 

 

'*JAVA*' 카테고리의 다른 글

[java] 컬렉션 프레임웍 - ArrayList  (0) 2021.11.21
[java] ObjectInputStream / ObjectOutputStream  (0) 2021.11.21
[java] StringTokenizer 클래스  (0) 2021.11.20
[java] Math 클래스  (0) 2021.11.20
[java] Wrapper(래퍼) 클래스  (0) 2021.11.20