Skip to content

Latest commit

 

History

History
31 lines (26 loc) · 747 Bytes

문자열_연결은_느리니_주의하라.md

File metadata and controls

31 lines (26 loc) · 747 Bytes

아이템 63: 문자열 연결은 느리니 주의하라

핵심 정리

  • 문자열 연결 대신 StringBuilder를 사용하라

문자열 연결은 느리다

  • 문자열 연결 연산자로 문자열 n개를 잇는 시간은 n^2에 비례한다
  • 문자열은 불변이라 양쪽 내용을 모두 복사해야 한다
public String statement(){
    String result = "";
    for (int i = 0; i < numItems(); i++) {
        result += lineForItem(i);
    }
    return result;
}

StringBuilder는 빠르다

public String statement2(){
    StringBuilder b = new StringBuilder(numItems() * LINE_WIDTH)
    for (int i = 0; i < numItems(); i++) {
        b.append(lineForItem(i));
    }
    return b.toString();
}