需求
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的正整数。
例如,121 是回文,而 123 不是。
解析
public static boolean isPalindrome(int x) {
int temp = x;
//a取值整数的末位数
int a = temp % 10;
while (true) {
//小于10,直接返回
if (temp < 10) {
break;
}
//整数回文数取值下标左移一位
temp = temp / 10;
//每次上次变量a的值乘10并加上当前整数的末位数
a = 10 * a + temp % 10;
}
//若需要判断包含负数,则取消此处负数的特殊判断,改为 return a==x;
return x < 0 ? false : a == x;
}
当然,这种写法并不是唯一解法,还可以用字符串进行判断,但是相对来说,本文数字解法效率相对较优