Solution 1:简单粗暴的转换成String再转成数组

class Solution {
    public boolean isPalindrome(int x) {
        if(x<0)return false;
        char []a=String.valueOf(x).toCharArray();
        int i=0;
        while(i<a.length){
            if(a[i]!=a[a.length-i-1]){
                return false;
            }
            i++;
        }
        
        return true;
       
    }
}

Solution 2:直接对数字进行判断,这种方法非要快

[leetcode]9. Palindrome Number

class Solution {
    public boolean isPalindrome(int x) {
        if(x<0)return false;
        
        int m=0;
        int temp=x;
       while(temp!=0){
           m++;
           temp/=10;
       }
        
        int a=0,b=0;
        while(m>0){
            a=x/(int)Math.pow(10,m-1);
            b=x%10;
          
            if(a!=b)return false;
            
            x=x%(int)Math.pow(10,m-1)/10;
            m=m-2;
        }
       return true;
    }
}

相关文章: