CH5-4 · FLOW

StringBuilder와 텍스트 조립 예제가 실행되는 순서

가변 버퍼 준비에서 시작해 마지막에 불변 String으로 변환까지 값과 책임이 이동한다.

  1. 1
    가변 버퍼 준비

    루프마다 text = text + part를 수행하면 이전 내용을 복사한 새 문자열이 생깁니다.

  2. 2
    원소 사이에만 구분자 추가

    첫 원소 앞이나 마지막 원소 뒤에 불필요한 쉼표가 생기지 않도록 인덱스 조건을 두거나 StringJoiner, Collectors.joining을 고려합니다.

  3. 3
    마지막에 불변 String으로 변환

    예상 길이가 매우 분명하면 초기 용량을 줄 수 있지만 대부분은 기본 확장으로 충분합니다.

실행 순서 StringBuilder는 자유 형식, StringJoiner는 구분자·접두사·접미사가 있는 목록에 적합합니다.