Мне нужно использовать рекурсию для реализации логического метода. Никакой какой-либо цикл не допускается. Код, который я написал, получается правильным ответом. Однако это пока неверно. Есть ли хорошие предложения? Благодаря!Java-логический рекурсивный метод для строк Число
public class RecusiveMethod {
public static void main (String[] args) {
System.out.println("True: " + isWordCountsRight("ccowcow", "cow", 2));
System.out.println("True: " + isWordCountsRight("kayakayakaakayak", "kayak", 3));
}
public static boolean isWordCountsRight(String str, String word, int n) {
if (n == 0) return true;
if (str.substring(0, word.length()).equals(word)) {
return isWordCountsRight(str.substring(1), word, n - 1);
}
return isWordCountsRight(str.substring(1), word, n);
}
}
Каков ожидаемый результат? –
Ожидаете ли вы 2 или 3 во втором случае? Совпадение с перекрытием или нет? – blafasel
Обратите внимание, что вы никогда не вернете 'false' - предположите, что это ваша проблема здесь – MartinS