Java/객체지향

[객체지향][자바의 정석] - 9.3 StringBuffer클래스

얄루몬 2022. 1. 17. 22:24

1. StringBuffer 클래스 특징

  • String처럼 문자형 배열(char[])을 내부적으로 가지고 있다.
  • 문자열을 저장하고 다루기 위한 클래스
  • String과 달리 내용을 변경할 수 있다. (Mutable)
    • append( )는 지정된 내용을 StringBuffer에 추가 후, StringBuffer의 참조를 반환

append후 참조 반환 과정

  • 배열의 길이 변경불가하기 때문에 공간이 부족하면 새로운 배열을 생성해야 한다.
    • 공간이 부족하면 새로 배열을 만들고 복사해주어야 한다. 
  • 문자열의 길이를 고려해서 적절한 크기로 생성해야 한다.

 

 

  • StringBuffer는 equals( )가 오버라이딩 되어있지 않다.
    • 이는 주소를 비교한다는 의미로 StringBuffer를 String으로 변환해서 equals( )해주어야 제대로 비교가 된다.

 

2. StringBuffer 클래스 생성자와 메서드