String, StringBuffer, StringBuilder 차이점

최성민·2020년 12월 28일
0

공통점

모두 String(문자열)을 저장하고 관리하는 Class

차이점

String은 불변

StringBuffer, StringBuilder는 가변

String 수정하는 알고리즘

//기본 String
String str = str1 + str2;

// StringBuilder or StringBuffer 사용법
StringBuilder str = new StringBuilder();
str.append(str1);
str.apeend(str2);

StringBuilder str = new StringBuilder(str1 + str2);
(StringBuffer도 동일)


StringBuffer와 Builder의 메소드는 동일

StringBuffer vs Builder

  • 기본 메소드는 동일

  • 멀티쓰레기 환경에서 Synchronizied 키워드의 사용 유무
    Buffer : O
    Builder : X
    멀티쓰레드 작업환경에서는 Buffer가 안전하다

동기화가 필요없다면 Builder가 아주 조금 더 좋은 성능을 나타낸다

.append() 연산시 약 1억6천만번 일어날때 약 2.6초 정도 빠른

String은 연산이 16만번이상 넘어가게되면 10초이상 걸림(알고리즘 풀이에 부적합)

profile
공부합시다

0개의 댓글