반응형
이번 글에서는 문자열을 동적으로 조작할 때 성능이 좋은 StringBuilder 클래스를 사용해
문자열을 생성하고, 중간에 삽입하고, 일부를 삭제하는 기능까지 실습합니다.
문자열을 반복적으로 변경해야 할 경우, + 연산 대신 StringBuilder를 사용하는 것이 훨씬 효율적입니다.
📌 예제 코드
public class StringBuilderExample {
public static void main(String[] args) {
String data = new StringBuilder()
.append("DEF") // "DEF" 추가 → "DEF"
.insert(0, "ABC") // 0번째에 "ABC" 삽입 → "ABCDEF"
.delete(3, 4) // 3번째 문자(D) 삭제 → "ABCEF"
.toString(); // 최종 문자열로 변환
System.out.println(data); // 결과: ABCEF
}
}
💻 실행 결과
ABCEF
💬 코드 설명
- StringBuilder는 내부 버퍼를 사용하여 문자열을 효율적으로 조작할 수 있는 가변 문자열 클래스입니다.
- append("DEF")로 "DEF"를 추가하고, insert(0, "ABC")로 "ABC"를 앞에 삽입하여 "ABCDEF"가 됩니다.
- delete(3, 4)는 3번째 인덱스(D) 하나를 삭제하여 "ABCEF"가 됩니다.
- toString()을 호출하면 최종 문자열 "ABCEF"가 String 타입으로 변환됩니다.
- 모든 메서드는 연쇄적으로 연결 가능(chain method) 하여 간결하게 작성할 수 있습니다.
💡 포인트 정리
- StringBuilder는 문자열을 반복적으로 수정하거나 조합할 때 효율적입니다.
- 주요 메서드:
- append(String) : 문자열 끝에 추가
- insert(int offset, String) : 원하는 위치에 삽입
- delete(int start, int end) : 특정 범위 문자열 삭제
- toString() : 최종 결과를 문자열로 반환
- 문자열 덧붙이기를 많이 한다면 +보다 StringBuilder 사용이 성능적으로 훨씬 유리합니다.
📌 정리하자면, StringBuilder는 문자열을 조작할 때 빠르고 유연한 방식을 제공합니다.
특히 반복적인 추가·삭제·삽입 작업이 필요한 상황에서는 String보다 훨씬 효율적이며,
간결하고 체이닝 가능한 문법 덕분에 코드도 깔끔하게 유지할 수 있습니다.
'Java > 자바 정리' 카테고리의 다른 글
112. 날짜와 시간, 보기 좋게 출력해보자 – Date와 SimpleDateFormat (0) | 2025.05.14 |
---|---|
111. 난수로 로또 번호 만들기 – Random 클래스 vs Math.random() (1) | 2025.05.14 |
110. 수학 계산을 간단하게! – Math 클래스 활용하기 (0) | 2025.05.14 |
108. 시스템 정보 한눈에 확인 – System.getProperty()와 getProperties() (0) | 2025.05.14 |
[ 간단 비교 107+ ] currentTimeMillis vs nanoTime (0) | 2025.05.14 |
107. 코드 실행 시간 측정하기 – System.nanoTime()으로 정밀하게 (0) | 2025.05.14 |