반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- CSS
- list
- Button
- Java
- IntelliJ
- 인텔리제이
- HashMap
- 이탈리아
- 정규식
- ArrayList
- CMD
- vscode
- Visual Studio Code
- 배열
- 자바
- input
- js
- map
- html
- replace
- table
- 자바스크립트
- 이클립스
- json
- date
- string
- Array
- 문자열
- javascript
- Eclipse
Archives
- Today
- Total
어제 오늘 내일
[Java StringBuffer] replace() – 문자열 일부 교체하기 본문
StringBuffer.replace()
는 문자열의 특정 범위를 지정해서 새로운 문자열로 교체할 수 있는 메서드입니다.
삽입이나 삭제를 따로 하지 않고 한 번에 치환할 수 있어 문자열 수정 작업에 자주 사용됩니다.
1. replace() 기본 사용법
public synchronized StringBuffer replace(int start, int end, String str)
start
부터end
직전까지의 문자열을str
로 교체end
는 포함되지 않음
StringBuffer sb = new StringBuffer("Hello Java");
sb.replace(6, 10, "World");
System.out.println(sb.toString());
// 출력: Hello World
👉 "Java"
부분이 "World"
로 교체되었습니다.
2. 문자열 교체 예제
단어 교체
StringBuffer sb = new StringBuffer("I like C++");
sb.replace(7, 10, "Java");
System.out.println(sb.toString());
// 출력: I like Java
포맷 변경
StringBuffer sb = new StringBuffer("2025/08/23");
sb.replace(4, 5, "-"); // 첫 번째 '/' → '-'
sb.replace(7, 8, "-"); // 두 번째 '/' → '-'
System.out.println(sb.toString());
// 출력: 2025-08-23
👉 문자열 일부를 치환할 때 직관적이고 편리합니다.
특정 위치 치환
StringBuffer sb = new StringBuffer("abcdef");
sb.replace(2, 4, "ZZ");
System.out.println(sb.toString());
// 출력: abZZef
👉 delete(2,4)
+ insert(2,"ZZ")
의 효과를 한 번에 얻을 수 있습니다.
3. 주의할 점
- 인덱스 범위를 벗어나면
StringIndexOutOfBoundsException
발생 start == end
이면 단순 삽입처럼 동작
StringBuffer sb = new StringBuffer("Hello");
sb.replace(5, 5, " World");
System.out.println(sb.toString());
// 출력: Hello World
👉 사실상 insert()
와 같은 효과를 냅니다.
4. 정리
replace(start, end, str)
→ 특정 구간 문자열을 교체- 삭제와 삽입을 합친 기능
- 문자열 포맷 변경, 특정 단어 치환 등에 활용
- 스레드 안전 (
synchronized
)
🔑 한 줄 정리
👉 문자열 일부를 바꿀 때는 StringBuffer.replace()
로 한 번에 해결하자!
반응형
'IT > Java' 카테고리의 다른 글
[Java StringBuffer] charAt(), setCharAt() – 특정 문자 읽기와 수정하기 (0) | 2025.09.27 |
---|---|
[Java StringBuffer] length(), capacity(), ensureCapacity(), setLength(), trimToSize() – 길이와 버퍼 관리 (0) | 2025.09.26 |
[Java StringBuffer] delete(), deleteCharAt() – 문자열 삭제하기 (0) | 2025.09.25 |
[Java StringBuffer] insert() – 원하는 위치에 문자열 삽입하기 (0) | 2025.09.25 |
[Java StringBuffer] append() – 문자열 이어붙이기 (0) | 2025.09.24 |
Comments