Javaで文字列の出現回数を検索する方法は何ですか?
StringクラスのindexOf()メソッドとsubstring()メソッドを使用して、文字列の出現回数を調べることができます。
以下はサンプルコードです。
public class CountOccurrences {
public static int countOccurrences(String str, String target) {
int count = 0;
int index = 0;
while ((index = str.indexOf(target, index)) != -1) {
count++;
index += target.length();
}
return count;
}
public static void main(String[] args) {
String str = "Hello Hello Hello World";
String target = "Hello";
int count = countOccurrences(str, target);
System.out.println("字符串 \"" + target + "\" 出现的次数为: " + count);
}
}
上記のコードを実行すると、結果は次のとおりです:
字符串 "Hello" 出现的次数为: 3
上記のコードでは、countOccurrences()メソッドを定義し、そのメソッドは2つのパラメータを受け取ります:検索対象の文字列strと目標の文字列target。メソッド内では、whileループを使用して、検索対象の文字列内で目標の文字列が何回出現するかを検索します。indexOf()メソッドを呼び出して、目標の文字列が検索対象の文字列内で見つかった場合、返り値が-1でない限り、一臀いしカウンターを1加算し、indexを一臀いしマッチした文字列の次のインデックス位置に更新します。最終的に、カウンターの値を結果として返します。
上記のコードは、ターゲット文字列が検索文字列内で重複しない出現回数を計算できます。重複した出現回数を計算する場合は、indexの更新をindex++に変更してください。