StringBuilder와 텍스트 조립 예제가 실행되는 순서
가변 버퍼 준비에서 시작해 마지막에 불변 String으로 변환까지 값과 책임이 이동한다.
-
1
가변 버퍼 준비
루프마다 text = text + part를 수행하면 이전 내용을 복사한 새 문자열이 생깁니다.
-
2
원소 사이에만 구분자 추가
첫 원소 앞이나 마지막 원소 뒤에 불필요한 쉼표가 생기지 않도록 인덱스 조건을 두거나 StringJoiner, Collectors.joining을 고려합니다.
-
3
마지막에 불변 String으로 변환
예상 길이가 매우 분명하면 초기 용량을 줄 수 있지만 대부분은 기본 확장으로 충분합니다.
실행 순서 StringBuilder는 자유 형식, StringJoiner는 구분자·접두사·접미사가 있는 목록에 적합합니다.