Я пытаюсь сравнить строки с помощью алгоритма, который вы видите ниже Мой код не работает .. затмение не показывает какой-либо ошибки, прежде чем запускать кодсравнить две строки в Java
public class MysteryClass {
public static void mystery(String n) {
String k= "alla";
if (k.charAt(k.length())==n.charAt(n.length())) {
System.out.println("palindrom");
} else {
System.out.println("not palindrom");
}
}
public static void main(String[] args) {
MysteryClass.mystery("alla");
}
}
но мы запускаем код, который я получаю
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4
at java.lang.String.charAt(String.java:658)
at shapes.MysteryClass.mystery(MysteryClass.java:6)
at shapes.MysteryClass.main(MysteryClass.java:15)
Как исправить это ?? благодаря
использования 'k.charAt (k.length() - 1)'. charAt() индексируется 0, поэтому длина 9 означает, что вы можете вызвать charAt() с 0-8 – BoDidely
, вы - гениальный человек ... Благословит вас Бог :) спасибо – Ali12
вы понимаете, что вы только проверяете последнего персонажа на проверьте, является ли это «палиндром» или нет, что явно неверно – sam