Я написал фрагмент кода для домашней работы в классе. Однако я думал, что это довольно долго! Есть ли более оптимизированный способ сделать это?Как проверить, является ли число палиндром?
String text = input.readLine();
int num = (text.length())/2;
double letter = (double)(text.length())/2;
String s1 = text.substring(0,num);
int u1 = Integer.parseInt(s1);
if (letter%1==0) {
StringBuffer s2 = new StringBuffer(text.substring(num));
s2 = s2.reverse();
String t2 = s2.toString();
int u2 = Integer.parseInt(t2);
if (u1==u2) {
System.out.println("Palindrome");
} else {
System.out.println("FAIL");
}
} else {
StringBuffer s2 = new StringBuffer(text.substring(num+1));
s2= s2.reverse();
String t2 = s2.toString();
int u2 = Integer.parseInt(t2);
if (u1==u2) {
System.out.println("Palindrom");
}else {
System.out.println("FAIL");
}
}
Возможный дубликат [Контрольная строка для палиндром] (HTTP: //stackoverflow.com/questions/4138827/check-string-for-palindrome) –
Взгляните на мой ответ. Я показал два метода проверки палиндрома. И не забудьте отметить это как [принято] (http://stackoverflow.com/help/accepted-answer), это помогло вам, щелкнув по пустому тику рядом с ответом :) Принятие дает вам репутацию. Если вы не принимаете никакого ответа, люди могут неохотно отвечать на ваши будущие вопросы. –