Напишите рекурсивный метод, называемый isReverse («word1», «word2»), который принимает две строки как параметры и возвращает true, если две строки содержат такую же последовательность символов, как в противоположный порядок, игнорируя случай и возвращая false в противном случае. Например, вызов:Что не так с моим методом isReverse
isReverse("Desserts", "Stressed")
будет возвращена истина. [Так есть ли десерты при стрессе?] Нулевые, пустые и однобуквенные строки также должны возвращать true (если оба параметра имеют одинаковое значение). Это домашнее задание, и у меня возникли проблемы с тем, чтобы этот код работал надлежащим образом. Он возвращает true независимо от того, что я делаю.
public static boolean isReverse(String word1, String word2)
{
if(word1 == null || word2 == null)
{
if(word1!= null && word2 != null)
{
return false;
}
return false;
}
else if(word1.length() == word2.length())
{
String firstWord = word1.substring(0, word1.length());
String secondWord = word2.substring(word2.length()-1);
if (firstWord.equalsIgnoreCase(secondWord))
{
return isReverse(word1.substring(0, word1.length()), word2.substring(word2.length() - 1));
}
}
return true;
}
Строка или класс StringBuffer имеет обратный метод –
@SrinathGanesh - StringBuilder имеет обратное, но мы должны предположить, что он не учил о классе Builder. Я прошел через 3 года колледжа без упоминания. – Hobbyist
Учитывая, что это домашнее задание, я бы предположил, что использование встроенной функции для завершения 95% задания является запрещенным. – aroth