Ich möchte ein Programm schreiben, dass eine Zahl einliest und danach den Boolean-Wert "true" ausgibt, falls diese Zahl ein Palindrom ist und "false" ausgibt, falls diese Zahl kein Palindrom ist.
Ich habe mir den folgenden Code überlegt
Die Beispiele scheinen alle immer das richtige Ergebniss auszugeben, aber bei "00500" gibt er mir "false" aus. Wo liegt der Fehler in meinem Code?
Ich habe mir den folgenden Code überlegt
Code:
static boolean isPalindrome(int number) {
String numberString = number + "";
int numberOfDigits = numberString.length();
int i = numberOfDigits - 1;
int j = 0;
while (true) {
if (numberString.charAt(i) != numberString.charAt(j)) {
return false;
}
if (i - j <= 1) {
return true;
}
i--;
j++;
}
}
Die Beispiele scheinen alle immer das richtige Ergebniss auszugeben, aber bei "00500" gibt er mir "false" aus. Wo liegt der Fehler in meinem Code?