Software/Java

[Java] String의 substring()과 indexOf() 메소드

TGnCo 2025. 2. 3. 09:13

Java

 

 

자바 String의 substring()과 indexOf() 메소드

Java에서 문자열을 다룰 때 가장 많이 사용하는 메소드 중 하나가 substring()indexOf()입니다. 이 두 메소드는 특정 문자열을 추출하거나, 원하는 문자열이 위치한 인덱스를 찾을 때 매우 유용하게 사용됩니다.

 

 

 

1. substring() 메소드

substring() 메소드는 문자열의 일부를 추출하는 기능을 합니다.

📌 메소드 형태

public String substring(int beginIndex)
public String substring(int beginIndex, int endIndex)
  • beginIndex: 추출을 시작할 위치 (0부터 시작)
  • endIndex: (선택 사항) 추출을 끝낼 위치 (endIndex 직전까지 포함)

 

예제 코드

public class SubstringExample {
    public static void main(String[] args) {
        String str = "Hello, Java!";
        System.out.println(str.substring(7)); // "Java!" 출력
        System.out.println(str.substring(0, 5)); // "Hello" 출력
    }
}

 

 

 

2. indexOf() 메소드

indexOf() 메소드는 특정 문자나 문자열이 처음 등장하는 위치(인덱스)를 반환합니다.

📌 메소드 형태

public int indexOf(String str)
public int indexOf(String str, int fromIndex)
public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
  • str: 찾을 문자열
  • ch: 찾을 문자 (char 타입의 ASCII 값)
  • fromIndex: 검색을 시작할 위치

 

예제 코드

public class IndexOfExample {
    public static void main(String[] args) {
        String str = "Hello, Java!";
        System.out.println(str.indexOf("Java")); // 7 출력
        System.out.println(str.indexOf('o')); // 4 출력
        System.out.println(str.indexOf('o', 5)); // 9 출력
    }
}

 

 

 

3. substring()과 indexOf() 함께 사용하기

이 두 메소드는 조합하여 특정 문자열을 동적으로 추출하는 데 활용할 수 있습니다.

예제 코드

public class CombinedExample {
    public static void main(String[] args) {
        String str = "오늘의 날씨는 맑음입니다.";
        int startIndex = str.indexOf("날씨는") + "날씨는".length();
        String weather = str.substring(startIndex, str.indexOf("입니다"));
        System.out.println("오늘의 날씨: " + weather); // "맑음" 출력
    }
}

 

 

 

4. 결론

  • substring()문자열에서 원하는 부분을 추출할 때 사용합니다.
  • indexOf()특정 문자열이나 문자가 어디에 위치해 있는지 찾는 데 유용합니다.
  • 이 두 메소드를 조합하면 원하는 문자열을 보다 동적으로 다룰 수 있습니다.

자바에서 문자열을 다룰 때 위의 메소드들을 적극적으로 활용해보세요! 😊