반응형
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
- 배열
- Eclipse
- CMD
- CSS
- vscode
- 테이블
- 자바
- ArrayList
- html
- Maven
- 이탈리아
- 인텔리제이
- javascript
- 정규식
- input
- string
- Java
- IntelliJ
- Visual Studio Code
- 자바스크립트
- table
- Button
- list
- js
- json
- windows
- Array
- date
- 이클립스
- 문자열
Archives
- Today
- Total
어제 오늘 내일
[Java StringBuilder] delete() / deleteCharAt() – 문자열 삭제하기 본문
StringBuilder
는 문자열을 효율적으로 수정할 수 있는 클래스입니다.
그중에서도 일부 문자열을 지우는 기능을 제공하는 메서드가 delete()
와 deleteCharAt()
입니다.
1. delete() 기본 사용법
public StringBuilder delete(int start, int end)
start
인덱스부터end
직전까지의 문자열을 삭제end
인덱스는 포함되지 않음 (반개구간)
StringBuilder sb = new StringBuilder("Java Programming");
sb.delete(5, 16);
System.out.println(sb.toString());
// 출력: Java
👉 "Programming"
부분이 삭제되고 "Java "
만 남습니다.
2. deleteCharAt() 기본 사용법
public StringBuilder deleteCharAt(int index)
- 지정한 위치의 단일 문자를 삭제
StringBuilder sb = new StringBuilder("abcdef");
sb.deleteCharAt(2);
System.out.println(sb.toString());
// 출력: abdef
👉 인덱스 2
의 'c'
가 삭제되었습니다.
3. 실전 활용 예제
문자열 중간 공백 제거
StringBuilder sb = new StringBuilder("Hello World");
sb.deleteCharAt(5); // 중복된 공백 제거
System.out.println(sb.toString());
// 출력: Hello World
특정 패턴 삭제
StringBuilder sb = new StringBuilder("2025-08-22");
sb.delete(4, 5); // '-' 제거
sb.delete(6, 7); // 두 번째 '-' 제거
System.out.println(sb.toString());
// 출력: 20250822
👉 날짜 문자열을 포맷 변경할 때 유용합니다.
문자열 길이 조절
StringBuilder sb = new StringBuilder("This is a long text");
sb.delete(10, sb.length());
System.out.println(sb.toString());
// 출력: This is a
👉 substring
처럼 문자열을 잘라낼 수 있습니다.
4. 주의할 점
delete()
와deleteCharAt()
에서 인덱스 범위를 벗어나면StringIndexOutOfBoundsException
발생delete(start, end)
는start == end
일 경우 아무 것도 삭제하지 않음
StringBuilder sb = new StringBuilder("Hello");
// sb.delete(10, 12); // 예외 발생
5. 정리
delete(start, end)
→ 특정 구간 삭제deleteCharAt(index)
→ 단일 문자 삭제- 문자열 중간 공백 제거, 포맷 변경, 잘라내기 등에 활용
- 인덱스 범위 유효성 체크 필요
👉 문자열 일부를 지워야 한다면 StringBuilder.delete()
와 deleteCharAt()
을 기억해 두자!
반응형
'IT > Java' 카테고리의 다른 글
[Java] ArrayList로 2차원 배열 만들기, 활용하기 (0) | 2025.08.23 |
---|---|
[Java String] String.split() – 문자열을 원하는 기준으로 나누기 (0) | 2025.08.22 |
[Java 기초] Arrays.stream()으로 배열을 스트림으로 변환하기 (0) | 2025.08.22 |
[Java] 문자열 사전순 비교 방법 (compareTo, 정렬, 대소문자 무시) (0) | 2025.08.22 |
[Java] 로또 번호 생성하기 (1) | 2025.03.22 |
Comments