回文数
题目
给你一个整数 x , 如果 x 是一个回文整数, 返回 true ; 否则, 返回 false .
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 例如, 121 是回文, 而 123 不是.
分析
负数总是 false
把目标数值整数反转, 得到的值和原值比较即可
代码
class Solution {
public boolean isPalindrome(int x) {
if (x < 0) {
return false;
}
long reverse = 0;
// 注意要缓存原来值, 因为此时 x 变了
int oldValue = x;
while (x != 0) {
reverse = reverse * 10 + x % 10;
x /= 10;
}
return reverse == oldValue;
}
}