Я напечатал 2 строки, и они буквально идентичны, никаких пробелов, потому что я их заменил. https://ideone.com/cw07LG Здесь собранПочему .equals() не работает
public class Palindrome{
public static boolean isPalindrome(String word){
int length;
String oppositeWord ="";
word = word.replace(" ","");
word = word.toLowerCase();
length = word.length();
for(int i=length-1;i>=0;i--){
if(Character.isLetter(word.charAt(i))){
oppositeWord +=word.charAt(i);
}else{
word = word.replace(word.charAt(i),'\0');
}
}
System.out.println(oppositeWord);
System.out.println(word);
return oppositeWord.equals(word);
}
public static void main(String[]args){
System.out.println(isPalindrome("Madam, I'm Adam"));
}
}
Почему вы мутируете слово? – Makoto
Я понятия не имею, о чем вы спрашиваете. – tnw
Не отвечая на ваш вопрос здесь, но я бы не стал обращать это слово и сравнить его. Просто сравните 1-ю букву с последней буквой, затем вторую букву со второй последней буквой и т. Д. – user3437460