Java/Effective Java

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

안도일 2023. 7. 30. 15:50

 

문자열 연결 연산자(+)

 

  • 문자열 연결 연산자(+)는 여러 문자열을 하나로 합쳐주는 편리한 수단이다.
  • 한 줄짜리 출력값 혹은 작고 크기가 고정된 객체의 문자열 표현을 만들 때라면 괜찮지만, 본격적으로 사용하기 시작하면 성능 저하를 감내하기 어렵다.
  • 문자열 연결 연산자로 문자열 n개를 잇는 시간은 n^2에 비례한다.
  • 문자열은 불변이라서 두 문자열을 연결할 경우 양쪽의 내용을 모두 복사해야 한다.
  • StringBuilder를 사용하자.

 

 

결론

 

  • 성능에 신경 써야 한다면 많은 문자열을 연결할 때는 문자열 연결 연산자(+)를 피하자.
  • 대신 StringBuilder의 append 메서드를 사용하자.