【Java】StringクラスのindexOf()メソッドの使い方と例

Javaの文字列操作は、特定の文字や部分文字列を検索する場面で頻繁に使用されます。そのような場面で役立つのが、JavaのStringクラスのindexOf()メソッドです。このメソッドは、指定された文字列や文字が最初に現れる位置を返します。

この記事では、indexOf()メソッドの使い方と例を解説します。

目次

indexOf()メソッドとは

JavaのStringクラスに含まれるindexOf()メソッドは、指定された文字列や文字が最初に出現する位置のインデックスを返します。もし文字列や文字が見つからない場合は、-1を返します。

indexOf()メソッドの構文

public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
public int indexOf(String str)
public int indexOf(String str, int fromIndex)

indexOf()メソッドは、さまざまなオーバーロードがあります。いくつかの主要な形式を以下に示します。

  • 最初の形式は、指定された文字が最初に現れる位置のインデックスを返します。
  • 2番目の形式は、指定されたインデックスから始まる部分文字列内で指定された文字が最初に現れる位置のインデックスを返します。
  • 3番目と4番目の形式は、指定された文字列が最初に現れる位置のインデックスを返します。2番目の形式と同様に、検索を開始する位置を指定することができます。

indexOf()メソッドの使用例

以下に、indexOf()メソッドの使用例を示します。

public class Main {
    public static void main(String[] args) {
        String str = "hello world";
        
        // 文字列内で指定された文字が最初に出現する位置を取得する
        int index1 = str.indexOf('o');
        System.out.println("Index of 'o': " + index1); // 4
        
        // 指定された位置から始まる部分文字列内で指定された文字が最初に出現する位置を取得する
        int index2 = str.indexOf('o', 5);
        System.out.println("Index of 'o' after position 5: " + index2); // 7
        
        // 文字列内で指定された文字列が最初に出現する位置を取得する
        int index3 = str.indexOf("world");
        System.out.println("Index of 'world': " + index3); // 6
    }
}

上記の例では、strという文字列内で指定された文字や文字列が最初に出現する位置をindexOf()メソッドを使用して取得しています。

indexOf()メソッドの注意点

  • indexOf()メソッドは、文字列内で最初に見つかった位置を返します。もしも指定された文字列や文字が見つからない場合は、-1を返します。

結論

JavaのStringクラスのindexOf()メソッドは、指定された文字列や文字が最初に出現する位置を検索するための便利なメソッドです。検索を開始する位置を指定したり、部分文字列内で検索したりすることもでき、柔軟な文字列操作が可能です。

これで、JavaのStringクラスのindexOf()メソッドについての基本的な理解が得られたはずです。

目次