<pre name="code" class="java"><a target=_blank href="https://oj.leetcode.com/problems/palindrome-number/">https://oj.leetcode.com/problems/palindrome-number/</a>
判断一个整数是不是回文整数
这个程序完全是试出来的,
首先没有想到十的整数倍会是一个bug
然后回文的形式有12321,1221两种情况
public class Solution {
public boolean isPalindrome(int x) {
if(x<0)return false;
if(x==0)return true;
int palindromeX = 0;
int inputX = x;
if(x%10==0){return false;}
while (x > 0) {
palindromeX = palindromeX * 10 + (x % 10);
if(palindromeX==x||palindromeX==x/10){
//System.out.println("huiwen1");
return true;
}
x = x / 10;
}
return false;
}
}
有更为简洁的形式
public boolean isPalindrome(int x) {
if (x<0 || (x!=0 && x%10==0)) return false;
int rev = 0;
while (x>rev){
rev = rev*10 + x%10;
x = x/10;
}
return (x==rev || x==rev/10);
}