티스토리 뷰

세 가지 클래스 모두 문자열을 처리하기 위한 클래스이다. 

하지만 String 클래스가 StringBuffer, StringBuilder 보다 느리고 메모리 관리 측면에서도 큰 차이를 보인다.

(String 클래스는 immutable 즉, 한번 value가 생성되면 변경할수 없는 특성때문에 성능이 떨어짐)

 

여기서 StringBuffer와 StringBuilder는 기능이 동일하지만 Builder는 멀티스레드환경에서 동기화를 지원하지 못한다

 

따라서 보통 단일스레드 환경에서는 StringBuilder를 , 멀티스레드 환경에서는 StringBuffer를 권장한다.

 

평상시 내가 하는 수준에 연산이 적고, 문자열 값의 수정이 없이 읽는 경우가 많은 상황에서는 String클래스가 적절하겠다.

 

StringBuffer, StringBuilder의 기본 메소드는 append insert 다. append는 끝에, insert는 특정 위치에

문자를 붙인다.