Java 가 문자열을 처리할 때, String 외에도 StringBuffer 와 StringBuilder 클래스를 사용하는데 이들에 대해 정리하고자 한다. 1. 공통점- String 이 불변 클래스인 것에 반해, StringBuffer 와 StringBuilder 는 가변 클래스여서 한 번 생성된 객체의 내용을 변경할 수 있다. 2. 차이점- StringBuffer 는 동기화된 메서드를 제공하여 멀티 스레드 환경에서 안전하지만, 단일 스레드 환경에서는 느리다.- StringBuilder 는 동기화되지 않아 단일 스레드 환경에서 더 빠르다. 따라서, 경우에 맞춰 최적의 성능을 위한 클래스 선택이 달라진다.