StringBuilder는 문자열을 다룰 때 성능을 크게 향상시키기 위해 사용된다.
- 문자열 불변성 문제 해결: Java의 String 클래스는 불변(immutable)이기 때문에 문자열을 생성할 때마다 객체가 새롭게 생성되어, 메모리 사용량이 증가하고 성능이 저하된다. 여기서 문자열의 생성이란, 문자열끼리의 연결도 포함하는데 문자열의 덧셈을 하면 새 문자열이 생성되기 때문이다.
- 메모리 효율성: StringBuilder는 내부적으로 가변 크기의 문자 배열을 사용하므로, 문자열 연결 작업에서 불필요한 객체 생성을 줄입니다.
- 시간 복잡도 개선: String 연결 O(n^2) -> StringBuilder 사용 O(n)
사용 사례: 큰 출력, 문자열 연결의 반복, 복잡한 출력 형식
public class Main {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
sb.appned("문자열").append("문자열");
String result = StringBuilder.toString();
System.out.println(result);
}
}
728x90
'Java' 카테고리의 다른 글
[Java] DFS (0) | 2025.04.26 |
---|---|
[Java] BFS (0) | 2025.04.26 |
[Java] ProcessBuilder (0) | 2025.03.25 |
[Spring] NoArgsConstructor / AllArgsConstructor (0) | 2025.01.25 |
Spring Boot Starter (0) | 2024.11.28 |