JAVA
[JAVA] StringBuffer클래스, StringBuilder클래스
정공자씨
2024. 4. 24. 11:02
StringBuffer클래스
정의
- StringBuffer 클래스의 문자열은 기존의 문자열을 변경하면
- 새로운 문자열이 생성되는 것이 아니라
- 기존의 문자열만 변경
사용하는 경우
- 기존의 문자열을 변경하는 상황이 많은 경우에 사용
- (예) 안드로이드와 같은 메모리 자원이 부족한 모바일 환경에서, 문자열을 자주 변경하는 경우에 사용
append() 메서드
- append() : 문자열을 뒤에 추가함
- String 클래스와 달리 append() 메서드를 이용하여, 기존 문자열을 수정할 수 있음
특징
- 멀티 스레드 동기화 기능이 제공
StringBuilder 클래스
정의
- StringBuffer 클래스의 문자열은 기존의 문자열을 변경하면
- 새로운 문자열이 생성되는 것이 아니라
- 기존의 문자열만 변경
사용하는 경우
- 기존의 문자열을 변경하는 상황이 많은 경우에 사용
- (예) 안드로이드와 같은 메모리 자원이 부족한 모바일 환경에서, 문자열을 자주 변경하는 경우에 사용
특징
- 멀티 스레드 동기화 기능이 제공되지 않음
- 따라서 StringBuffer보다 성능면에서 좋음
따라서 멀티 스레드 환경이 아니면 StringBuilder를 사용하는 것이 좋음
StringBuilder와 StringBuffer 차이점
StringBuffer 클래스 | StringBuilder클래스 |
스레드 동기화 제공 | 스레드 동기화 기능을 제공하지 않음 |