文字列内の部分文字列の出現の検索: トラブルシューティングと代替解決策
提供された Java コードを実行して部分文字列の出現をカウントする場合文字列内では、アルゴリズムが停止しないという問題が発生する可能性があります。この問題は、文字列 str の境界を超えていないことを確認するチェックを行わずに lastIndex を一定に増分することが原因で発生します。
この問題を解決するには、コードを変更して、lastIndex が値を超えているかどうかを検証する条件付きチェックを含めます。はまだ str:
String str = "helloslkhellodjladfjhello"; String findStr = "hello"; int lastIndex = 0; int count = 0; while (lastIndex != -1 && lastIndex < str.length()) { lastIndex = str.indexOf(findStr, lastIndex); if (lastIndex != -1) count++; lastIndex += findStr.length(); } System.out.println(count);
の範囲内にあります。または、 Apache Commons Lang ライブラリ:
String str = "helloslkhellodjladfjhello"; String findStr = "hello"; System.out.println(StringUtils.countMatches(str, findStr));
このメソッドは、部分文字列の出現をカウントするプロセスを簡素化し、効率的で信頼性の高いソリューションを保証します。
以上がJava で部分文字列の出現を効率的にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。