문자열 내 하위 문자열 발생 찾기: 문제 해결 및 대체 솔루션
제공된 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에서 StringUtils.countMatches 메서드를 사용할 수도 있습니다. Commons Lang 라이브러리:
String str = "helloslkhellodjladfjhello"; String findStr = "hello"; System.out.println(StringUtils.countMatches(str, findStr));
이 방법은 하위 문자열 발생 횟수를 계산하는 프로세스를 단순화하고 효율적이고 안정적인 솔루션을 보장합니다.
위 내용은 Java에서 하위 문자열 발생을 효율적으로 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!