Bu yöntem yalnızca xox gibi küçük girişler için çalışır, ancak taco cat gibi daha karmaşık bir girdiyle çalışmaz. Bu kodu tekrar tekrar okudum ve sorunu çözemedim. Küçük bir hata olduğunu farzediyorum, çünkü buradaki kodu değiştirerek yaklaşımımı değiştirmeye çalıştım ve düzeltemedim.Özyinalı Palindrome Checker
import java.util.Scanner;
public class Palindromes
{
static Scanner scan = new Scanner(System.in);
public static void main (String[] args)
{
System.out.println("Enter a string, human:");
String s=scan.nextLine();
if(palindrome(s)){
System.out.print("This is a palindrome, I am amused Earthling.");
}else{
System.out.print("Don't you know to speak only in palindromes to your alien Overlord?");
}
}
public static boolean palindrome(String s){
s.replace(" ","");
if(s.length()<2){
return true;
}else if(s.charAt(0)==s.charAt(s.length()-1)){
return palindrome(s.substring(1,s.length()-2));
}else{
return false;
}
}
}
Eğer kesme ayarı ve yönteme gezinmek için bir debugger kullanarak denediniz mi? –
'Dize değişmez. 's = s.replace (" "," ");' – bcsb1001