Search

Item 63. 문자열 연결은 느리니 주의하라

생성일
2023/08/08 05:33
챕터
9장 - 일반적인 프로그래밍 원칙

요약

문자열 연결은 느리니 사용에 주의하자.
성능을 포기할 수 없다면 StringBuilder를 사용하자.

문자열 연결과 StringBuilder

문자열 연결 연산자(+)는 여러 문자열을 합치는 기능은 무척 편리하지만, 문자열 연결 연산자로 문자열 n개를 잇는 시간은 n의 제곱에 비례한다.
public String statement() { String result = ""; for (int i = 0; i < numItems(); i++) result += lineForItem(i); return result; }
Java
복사
이처럼 문자열 연결을 많이 진행한다면 심각하게 느려질 수 있다.
성능을 포기하고 싶지 않다면 String 대신 StringBuilder를 사용하자.
public String statement(0 { StringBuilder sb = new StringBuilder(numItems() * LINE_WIDTH); for (int i = 0; i < numItems(); i++) sb.append(lineForItem(i)); return b.toString(); }
Java
복사