728x90
indexOf()와 lastIndexOf()는 자바 문자열에서 특정 문자열의 인덱스를 찾는데 사용하는 메서드 입니다. (대소문자 구별)
메서드 | 설명 |
indexOf(String) | 인자로 전달된 String의 index를 리턴합니다. (원하는 String을 찾지 못하면 -1을 리턴) |
indexOf(String, int) | 처음 몇글자를 건너띄고 특정 문자열을 찾고 싶다면 indexOf(String, int)를 사용합니다. 예 ) String test = "Hello World"; test.indexOf("World",5) 는 변수 test에서 5번 index부터 "World"를 찾고 그 index를 리턴 |
indexOf(int) | int 타입으로 전달된 아스키 값을 문자열에서 찾고 index를 리턴 |
indexOf(int, int) | 첫번째 int 타입 인자는 찾고자 하는 아스키 값이고, 두번째 int 는 탐색을 시작할 index를 의미합니다. |
lastIndexOf(String) | indexOf는 문자열의 0번 index부터 특정 문자열을 탐색하였습니다. lastIndexOf(String) 같은 경우는 반대방향으로 문자열을 찾고 싶을때 사용합니다. |
lastIndexOf(String, int) | 예 ) String test = "Hello World"; test.indexOf("Hello", 5) 는 변수 test에서 5번 index에서 뒤쪽 방향으로 "Hello"를 찾고 그 첫번째 index인 0을 리턴 |
lastIndexOf(int) | 반대 방향으로 아스키 코드를 찾을 때 사용합니다. |
lastIndextOf(int, int) | 첫번째 int 타입 인자는 찾고자 하는 아스키 값이고, 두번째 int 는 탐색을 시작할 index를 의미합니다. |
public class Solution {
public static void main(String[] args) {
String test = "Hello World";
// indexOf (정방향)
System.out.println(test.indexOf("World")); //6
System.out.println(test.indexOf("World",5)); //6
System.out.println(test.indexOf('o')); //4
System.out.println(test.indexOf('o',5)); //7
// lastIndexOf (반대방향)
System.out.println(test.lastIndexOf("World")); //6
System.out.println(test.lastIndexOf("World",5)); //-1
System.out.println(test.lastIndexOf('o')); //7
System.out.println(test.lastIndexOf('o',5)); //4
}
}
indexOf() 를 사용하여 특정 문자 갯수 세기
// indexOf() 를 사용하여 문자열 내의 특정 문자 갯수 세기
String str = "To be, or not to be, that is the question.";
int count = 0;
int pos = str.indexOf("be");
while(pos > -1) {
count++;
pos = str.indexOf("be", pos + 1);
}
System.out.println(count); // 2
728x90
'Java Algo Core 20' 카테고리의 다른 글
Generic (2) | 2024.05.15 |
---|---|
Arrays (0) | 2024.05.14 |
String Methods (5) (0) | 2024.05.08 |
String Methods (4) (0) | 2024.05.08 |
String Methods (3) (0) | 2024.05.08 |