题目
解法一:
解法一:
class Solution {
public boolean isPalindrome(int x) {
int rev=0;
if(x<0){
return false;
}
int count=x;
while(count!=0){
int pop=count%10;
count=count/10;
rev=rev*10+pop;
}
// System.out.println(rev);
if(rev==x){
return true;
}
else{
return false;
}
}
}
官方解法:反转一半数字
如果是回文数反转后一半数字应该与前一半相等。这样还可以避免反转后整数溢出的问题。
class Solution {
public boolean isPalindrome(int x) {
int rev=0;
if(x<0||(x%10==0&&x!=0)){
return false;
}
while(x>rev){
rev=rev*10+x%10;
x=x/10;
}
return x==rev||x==rev/10;
}
}