프로그래밍/Java
[Java] StringBuilder 클래스
JBisCode
2023. 8. 13. 13:43
목차

StringBuilder 란?
👉
StringBuilder란 문자열을 효율적으로 처리하기 위한 클래스이다.
변경가능한 문자열을 생성하고 조작하는데 사용된다.
일반적인 String 클래스와 달리 StringBuilder는 문자열을 수정할때 매번 새로운 객체를 생성하지 않고 기존의 문자열을 수정하므로 성능 향상을 가져올수 있다.
장점 및 특징
- StringBuilder는 객체가 생성된 이후에도 내부의 문자열을 변경가능하다.
- 문자열 수정이 일반 String 클래스보다 빠르다.
단점
- 스레드가 안전하지 않다. StringBuilder는 스레드 안정성을 제공하지 않아서 멀티스레드 환경에서는 동기화를 직접 처리해야한다.
메서드 사용예제
append(String str) : 문자열 추가
StringBuilder sb = new StringBuilder("Hello");
sb.append(", world!");
System.out.println(sb.toString()); // 출력: Hello, world!
insert(int offset, String str) : 문자열 삽입
StringBuilder sb = new StringBuilder("Hello");
sb.insert(5, ", world!");
System.out.println(sb.toString()); // 출력: Hello, world!
replace(int start, int end, String str) : 문자열 대체
StringBuilder sb = new StringBuilder("Hello, world!");
sb.replace(7, 12, "Java");
System.out.println(sb.toString()); // 출력: Hello, Java!
delete(int start, int end) : 문자열 삭제
StringBuilder sb = new StringBuilder("Hello, world!");
sb.delete(7, 12);
System.out.println(sb.toString()); // 출력: Hello, !
reverse() : 문자열 역순 변환
StringBuilder sb = new StringBuilder("Hello");
sb.reverse();
System.out.println(sb.toString()); // 출력: olleH
toString() : StringBuilder를 String으로 반환
StringBuilder sb = new StringBuilder("Hello");
String result = sb.toString();
System.out.println(result); // 출력: Hello
정리
👉
StringBuilder는 문자열을 조작하거나 다룰때 훨씬 더 효율적으로 다룰 수 있다. 문자열을 자주 수정하거나 추가,제거할때는 StringBuilder를 사용하자.