반응형
문자열의 indexOf() 메소드는 문자열에서 찾으려는 문자/문자열의 인덱스를 반환한다.
특징 1 - indexOf() 메소드의 반환 값의 의미
public class IndexOfExample {
public static void main(String[] args) {
String str = "hello world";
System.out.println(str.indexOf("lo")); // 3
}
}
str이라는 변수의 "hello world" 값에서 "lo"라는 문자열은 인덱스 3에 위치하기 때문에 3을 반환.
특징 2 - 문자열에서 찾으려는 문자/문자열이 존재하지 않을 경우
public class IndexOfExample {
public static void main(String[] args) {
String str = "hello world";
System.out.println(str.indexOf("abc")); // -1
}
}
"abc"라는 문자열은 "hello world"라는 문자열에 존재하지 않기 때문에, -1을 반환.
특징 3 - 검색 방향은 왼쪽에서 오른쪽으로
public class IndexOfExample {
public static void main(String[] args) {
String str = "hello world";
System.out.println(str.indexOf("l")); // 2
}
}
타겟 문자열의 왼쪽부터 찾으려는 문자/문자열을 검색을 한다.
왼쪽부터 검색 시, 가장 먼저 찾은 "l"이라는 값의 인덱스는 2이기 때문에, 2를 반환.
특징 4 - 문자 혹은 유니코드 정숫값으로 특정 문자 찾기
public class IndexOfExample {
public static void main(String[] args) {
String str = "hello world";
System.out.println(str.indexOf('e')); // 1
System.out.println(str.indexOf(101)); // 1
}
}
문자 'e'는 타겟 문자열의 인덱스 1에 있어 1을 반환.
101라는 정숫값은 유니코드에서 문자 'e'를 의미하여 동일하게 1을 반환.
특징 5 - 특정 인덱스부터 문자/문자열 검색이 가능
public class IndexOfExample {
public static void main(String[] args) {
String str = "hello world";
System.out.println(str.indexOf("l", 3)); // 3
System.out.println(str.indexOf('l', 3)); // 3
}
}
indexOf() 메소드의 두 번째 인수로, 검색 시작 인덱스를 설정 가능.
예제에서 indexOf("l", 3)의 의미는 인덱스 3부터 "l"라는 문자열을 찾음을 의미 (검색 범위 -> hello world)
결과로 "l"을 인덱스 3에서 찾아서, 3을 반환.
반응형
'코딩 > Java' 카테고리의 다른 글
자바 - 문자열에서 문자열 추출하기 (substring() 메소드) (0) | 2024.11.18 |
---|---|
자바 - 클래스 상속 못하게 하는 법 (final 키워드) (2) | 2024.11.18 |
자바 - 다운캐스팅 사용 이유 (1) | 2024.11.15 |
자바 - 리스트 선언 시, 요소 값을 넣어 초기화하는 법 (0) | 2024.11.13 |
자바 - Child obj = new Child()와 Parent obj = new Child() 차이 (feat. 업캐스팅) (0) | 2024.11.12 |