티스토리 뷰

728x90

String 클래스의 immutable 특성 때문입니다. immutable 이란 변경할 수 없는, 불변의 라는 뜻으로 String 의 value 값은 한 번 생성되면 변경될 수 없습니다.

 

더 많은 시간과 메모리가 소요되는 것입니다. 연산을 많이 하면 할수록 이런 성능 차이는 더욱 심해집니다.

 

String 클래스는 immutable 속성을 가짐으로써 안전하다고 했습니다. 값이 변경되지 않기 때문에 여러 스레드가 데이터를 공유하더라도 동기화를 신경쓸 필요가 없이 안정성이 유지되는 장점이 있습니다.

 

append()

 

https://cjh5414.github.io/why-StringBuffer-and-StringBuilder-are-better-than-String/

 

StringBuffer, StringBuilder 가 String 보다 성능이 좋은 이유와 원리

Jihun's Development Blog

cjh5414.github.io

 

http://egloos.zum.com/deblan2/v/419830

 

String, StringBuffer, StringBuilder 속도 실험 (시간 측정)

 

1. Introduction

String의 + 연산자가 느리다는 것은 널리 알려진 사실이다. String은 내부적으로 char[]을 사용하는데 이 배열은 변경이 불가능하다. String은 인스턴스 생성 시에만 char[]에 값을 넣을

 

egloos.zum.com

 

728x90
댓글