미역/자바
StringBuilder
자리끼
2021. 12. 1. 09:24
StringBuilder는 이름에서 바로 알 수 있듯이 String을 다루는 클래스이다.
String은 변하지 않는 불변 객체이다. String + String을 한다던가, String을 변경한다던가 하면 본래의 String이 변하는 것이 아니라 새로 생성되는 것이다. 그래서 String을 연산하고자 한다면 메모리 할당, 해제를 발생시켜 성능이 좋지 않다.
이 때 사용하는 것이 StringBuilder이다.
String을 연산할 때, 새로운 객체를 생성하는 것이 아니라 기존 객체를 갱신하는 방식을 사용하기 때문에 속도도 빠르고 부하도 적다.
//StringBuilder 생성
StringBuilder sb = new StringBuilder();
//offset 위치에 문자열 추가
StringBuilder insert(int offset, String str);
//start ~ end-1까지의 문자열 삭제
StringBuilder delete(int start, int end);
//start ~ end-1까지의 문자열을 str로 대체
StringBuilder replace(int start, int end, String str);
//문자열 뒤집기
StringBuilder reverse();
//start ~ end-1까지의 내용을 담은 String 인스턴스 반환
String substring(int start, int end);
//저장된 문자열을 반환
String toString()