StringBuilder()

MSKim·2023년 2월 27일
0

Java

목록 보기
7/19

자바에서 String 객체는 변경 불가능하다. 한 번 생성되면 내용을 바꿀 수 없단 뜻이다.
따라서 하나의 문자열을 다른 문자열과 연결하면 새 문자열이 생성되고, 이전 문자열은 가비지 컬렉터로 들어간다.

String은 변경 불가능한 문자열을 생성하지만 StringBuilder는 변경 가능한 문자열을 만들어 주기 때문에,
String을 합치는 작업 시 하나의 대안이 될 수 있다.

public class Test {
    public static void main(String[] args) {
        String s = "*"; // *
        s += "*";       // **
        s += "*";       // ***
        System.out.println(s);  // *** 이지만 *를 더하는 과정에 객체가 생성되어 쓸데없는 메모리 낭비가 된다.

        StringBuilder sb = new StringBuilder(); // 메모리 낭비 x
        sb.append("*");
        sb.append("*");
        sb.append("*");
        System.out.println(sb);     // ***
    }
}
profile
Today I Learned

0개의 댓글