BackEnd Developer, Love Crossfit, Welcome to Jay's blog

String vs StringBuffer vs StringBuilder

|

String

불변 객체라 문자열을 만들때마다 새로운 메모리를 생성하게 된다. 특히 ‘+’와 concat을 이용해 문자열들을 이어붙일 경우 기존의 문자열을 복사한 후 추가하므로 메모리 관리 측면에서 비효율적이다.

StringBuilder

변경 가능한 문자열이지만 동기화 지원을 하지 않으므로 asynchronized 싱글쓰레드 환경에서 사용한다.

StringBuffer

변경 가능한 문자열이며 동기화 지원을 하므로 synchronized 멀티쓰레드 환경에서 사용한다.