Heres my code. Я не уверен, что случилось. Мой проект - создать программу, которая проверяет, является ли слово палиндром.Ошибка выполнения программы Java ArrayIndexOutofBounds
import java.util.Scanner;
public class PalindromeChecker {
public static void main(String[] args) {
// Open Scanner
Scanner input = new Scanner(System.in);
// Prompt User for word
System.out.println("Enter word to check if it is a Palindrome:");
// Scan in the word
String word = input.nextLine();
int a = 0; // used to extract word from array (small)
int b = 0; // used to extract word from array (large)
int c = 0; // used to stop when
int d = (word.length());
int e = d/2;
int f = e - 2;
int x = word.length(); // set cap of array pulling
char[] array = word.toCharArray(); // create array of chars
if (array[a] == array[x] && c != f) {
a++;
x--;
c++;
} else {
b = 1;
}
if (b == 1) {
System.out.println("This word is not a Palindrome!");
} else if (b == 0) {
System.out.println("This word is a Palindrome!");
}
}
}
Ошибка в
if (array[a] == array[x] && c!=f)
Я точно не знаю, что пошло не так, но когда вы положили в не палиндром он пропускает. Я был бы более чем рад получить совет относительно того, что делать в этой ситуации.
Было бы хорошо, если бы вы назвали ваши переменные. – shmosel
@schmosel Получил это. Одну секунду. –
Где цикл, который вы должны применить для проверки символов массива? – MaxZoom