String, StringBuilder, StringBuffer 중 뭘 써야 할까?

2011-12-10

출처 -http://www.a2ztechguide.com/2011/12/difference-between-string-stringbuffer.html

  1. 값이 변하지 않으면 불변객체 String

    String은 immutable 이다. 한 번 만들어두고 걍 읽어만 올 거면 대부분의 경우 String을 쓰면 되는 모양. 자주 변하는 경우, 그때마다 새로 만들어줘야 하므로 비추천. equals가 오버라이드 되어 있다.
  2. 싱글 스레드라면 StringBuilder

    mutable함. 데이터가 막 바뀌는 경우 사용. 나온지 얼마 안 된 신삥. StringBuffer랑 synchronization 빼고 동일. 출처 포스트에는 StringBuffer보다 빠르다고 한다. equals오버라이드 안 되어 있음.
  3. 멀티스레드라면 StringBuffer

    equals오버라이드 안 되어 있음. StringBuilder랑 synchronization 빼고는 동일
자주 포스팅 하자 디퍼런트