Ваш код даже не компилируется.
for (int i= 0; i < len ; i++)
{
char[] a = charAt[i];
}
for (int j= len ; j>=0 ; j++)
{
char[] b = charAt[j];
}
Здесь не Инстанцирование массива (а и б) с длиной 1, который всегда будет держать перезапись кроме того, вы делаете локальные переменным, которая не может быть доступна вне цикла.
Вы не можете сравнивать массивы как
if (a[]==b[])
{
System. out. print("Palindrome");
}
Что вы можете сделать, это
public static void main (String[] args)
{
String original = "Dot is Got";
StringBuilder sb = new StringBuilder(original);
if(original.equals(sb.reverse().toString())) {
System. out. print("Palindrome");
} else {
System. out. print("Not a palindrome");
}
}
См this понимать обратную функцию.
Если вы все еще хотите сделать это так, как вы делаете это, то лет нужно изменить свой код
public class Palindrome {
public static void main (String[] args)
{
String original= "Dot is Got";
int len = original.length();
boolean palindrome = true;
for (int i= 1; i <= len ; i++)
{
if(original.charAt(len-i) == original.charAt(i-i)) {
continue;
} else {
palindrome = false;
break;
}
}
if(palindrome) {
System.out.println("Palindrome");
} else {
System.out.println("Not a Palindrome");
}
}
}
нет, это не правильно. –
Скомпилирует? Когда он работает, выполняет ли он себя так, как вы ожидали? Пожалуйста, дайте нам несколько разных строк ввода, ожидаемых результатов и фактических результатов. – rajah9
Я хотел печенье. Когда я его запустил, код не дал мне cookie. -1. –