String을 '+' 연산자로 붙이는 경우 계속 해서 새로운 인스턴스가 생겨서 성능 저하 문제로 문자열을 붙여야 되는 경우 StringBuilder, StringBuffer 를 사용하는데 조그만 부분에도 '+' 연산자를 쓰지 않는 것이 좋나 싶어서 찾아보니 '+' 연산자를 사용해도 내부적으로 StringBuilder를 사용한다고 한다.

 

 

다만, 문자열을 한번에 더하는 것이 아니라 계속해서 더하는 경우 '+' 는 StringBuilder 인스턴스를 새로 생성하기 때문에 성능 저하가 생기는 것이 맞다. for문을 돌리거나 계속해서 문자열을 더하는 경우가 아니면 '+' 연산자를 사용!

 

 

 

 

 

[참고]

 

String은 항상 StringBuilder로 변환될까?

JDK 1.5 버전 이후부터, String 의 + 연산은 컴파일시에 StringBuilder 를 사용하도록 자동변환되어 성능 최적화가 이뤄진다고 알려져 있습니다. 그러나 String은 항상 StringBuilder로 변환되지 않습니다. Stri

siyoon210.tistory.com

+ Recent posts