指定されたアルゴリズムが停止しないのはなぜですか?
提供されたアルゴリズムでは、部分文字列の出現数を見つける試みが行われます。文字列で。ただし、アルゴリズムは、文字列内の部分文字列の最後のインデックスが -1 になるまで継続するように設計されています。最後のインデックスは常に部分文字列の長さを追加することによって更新されるため、この条件が満たされることはありません。その結果、アルゴリズムは部分文字列の検索を無期限に継続し、終了することはありません。
部分文字列のカウントに Apache Commons Lang を使用する
部分文字列の出現をカウントする別のアプローチは次のとおりです。 Apache Commons Lang の StringUtils.countMatches メソッドを利用します。このメソッドは、文字列と部分文字列を引数として受け取り、文字列内に部分文字列が出現する回数を返します。この方法を使用すると、元の問題は次のコードで解決できます:
String str = "helloslkhellodjladfjhello"; String findStr = "hello"; System.out.println(StringUtils.countMatches(str, findStr));
このコードの出力:
3
文字列「helloslkhellodjladfjhello」。
以上が部分文字列カウント アルゴリズムが停止しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。