String, StringBuffer, StringBuilder 비교

전윤지·2021년 6월 1일
0

JAVA

목록 보기
4/10

1. String, StringBuffer 공통점

  • 둘 다 문자열을 저장, 관리하는 클래스임

2. String, StringBuffer 차이점

1) String

  • String 객체는 불변 속성
  • String 객체는 한 번 생성되면 할당 된 공간이 변하지 않는다
  • String은 고정되어서 변경이 불가능하기 때문에, 내부 문자열을 수정 할 수 없다
    => 따라서 문자열을 수정 할 때마다 새로운 문자열을 리턴함
    => 문자열 연산이 많은 경우, 성능 저하

2) StringBuffer

  • StringBuffer는 가변 속성
  • 객체의 공간이 부족해지면, 버퍼의 크기를 유연하게 늘려줌
  • StringBuffer는 문자열 연산 시, 동일 객체 내에서 문자열 수정 가능

3. StringBuffer, StringBuilder 비교

1) StringBuffer

  • 동기화 키워드 지원 (synchronized)
    => Thread safe 함

2) StringBuilder

  • 동기화 지원 X
    => Thread safe하지 않음

0개의 댓글