본문 바로가기
개발로그/JAVA

JAVA - indexOf() / lastIndexOf(특정 문자 위치 찾기)

by 개발김쿙 2023. 11. 9.

indexOf()

 - indexOf(String str)

 - indexOf(int ch)

 - indexOf(int ch, int fromIndex)

 - indexOf(String str, int fromIndex)

 

indexOf()특정 문자문자열앞에서부터 처음 발견되는 인덱스를 반환하며

만약 찾지 못했을 경우 "-1"을 반환합니다.

 

.indexOf( "찾을 특정 문자" , "시작할 위치" ) 이런식으로 사용해 주면된다.

"시작할 위치" 같은경우는 생략이 가능하며 생략할 경우 0번째 즉 처음부터 찾기 시작한다.


 

lastIndexOf()

 - lastIndexOf(String str)

 - lastIndexOf(int ch)

 - lastIndexOf(int ch, int fromIndex)

 - lastIndexOf(String str, int fromIndex)

 

lastindexOf() 는 특정 문자나 문자열이 에서부터 처음 발견되는 인덱스를 반환하며

만약 찾지 못했을 경우 "-1"을 반환합니다.

왼쪽에서 몇번째 위치하는지를 인덱스로 반환한다.

사용법은 indexOf 와 동일하다

 

public int[] solution(String str) {
        int[] result = new int[str.length()];

        for(int i=0;i<str.length();i++){

            String subStr = str.substring(0,i);
            if(subStr.indexOf(str.charAt(i))==-1) { // str에서 원하는 문자를 못 찾을 시 -1
                result[i] = -1;
            }else {
                result[i] = i-subStr.lastIndexOf(str.charAt(i));
            }
        }
        return result;
    }

참고 : https://mine-it-record.tistory.com/124 [나만의 기록들:티스토리]

'개발로그 > JAVA' 카테고리의 다른 글

JAVA - StringBuilder 공부  (0) 2023.11.16
JAVA - 자료구조 재귀함수, Recursion  (2) 2023.01.12
JAVA Thread 생성하기, 스레드 생성하기  (0) 2023.01.10