반응형
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
- string
- Eclipse
- js
- 인텔리제이
- html
- javascript
- list
- table
- 이클립스
- 자바
- ArrayList
- json
- vscode
- 정규식
- 문자열
- 배열
- Button
- CMD
- Java
- Array
- 자바스크립트
- IntelliJ
- Maven
- Visual Studio Code
- date
- CSS
- windows
- input
- 이탈리아
- 테이블
Archives
- Today
- Total
어제 오늘 내일
[Java String] String.indexOf() – 문자열에서 위치 찾기 본문
문자열에서 특정 문자나 문자열이 어느 위치에 있는지 알고 싶을 때는 indexOf()
메서드를 사용합니다.
검색된 위치는 인덱스로 반환되며, 없으면 -1
을 반환합니다.
1. 기본 사용법
public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
public int indexOf(String str)
public int indexOf(String str, int fromIndex)
ch
: 찾을 문자(유니코드 값)str
: 찾을 문자열fromIndex
: 검색을 시작할 위치 (생략하면 처음부터 검색)
String text = "Hello Java";
System.out.println(text.indexOf('H')); // 0
System.out.println(text.indexOf("Java")); // 6
System.out.println(text.indexOf("Python")); // -1
👉 존재하지 않으면 -1
을 반환합니다.
2. 특정 위치 이후 검색
fromIndex
를 지정하면, 문자열의 특정 위치 이후부터 검색할 수 있습니다.
String text = "banana";
System.out.println(text.indexOf("a")); // 1
System.out.println(text.indexOf("a", 2)); // 3
System.out.println(text.indexOf("a", 4)); // 5
👉 "banana"
에서 "a"
는 여러 번 등장하지만, fromIndex
를 활용해 원하는 위치 이후의 값만 찾을 수 있습니다.
3. 실용적인 예제
파일 확장자 위치 찾기
String file = "report.docx";
int dotIndex = file.indexOf(".");
String ext = file.substring(dotIndex + 1);
System.out.println(ext);
// docx
이메일에서 사용자명 추출
String email = "user@example.com";
int atIndex = email.indexOf("@");
String username = email.substring(0, atIndex);
System.out.println(username);
// user
👉 indexOf()
와 substring()
을 조합하면 문자열 파싱이 간단해집니다.
4. 여러 번 등장하는 경우
여러 번 등장하는 문자열을 모두 찾고 싶다면, 반복문과 함께 사용할 수 있습니다.
String text = "abracadabra";
int index = text.indexOf("a");
while (index != -1) {
System.out.println("a found at: " + index);
index = text.indexOf("a", index + 1);
}
출력:
a found at: 0
a found at: 3
a found at: 5
a found at: 7
a found at: 10
5. 정리
indexOf()
는 문자열에서 특정 문자/문자열 위치를 찾을 때 사용- 찾을 수 없으면
-1
반환 fromIndex
로 검색 시작 위치 지정 가능- 확장자 추출, 이메일 파싱 등 다양한 실무 활용 가능
👉 문자열 검색의 기본은 String.indexOf()
, 없으면 -1
반환을 기억하자!
반응형
'IT > Java' 카테고리의 다른 글
[Java StringBuffer] reverse() – 문자열 뒤집기 (1) | 2025.08.26 |
---|---|
[Java 기초] Arrays.sort()로 배열 정렬하기 (1) | 2025.08.26 |
[Java 기초] Arrays.fill()로 배열 값 초기화하기 (1) | 2025.08.25 |
[Java String] String.substring() – 문자열 자르기 (0) | 2025.08.25 |
[Java 기초] 리스트 안에 리스트 넣기 (0) | 2025.08.24 |
Comments