java实现回文数判断

需求

回文数是指正序(从左向右)和倒序(从右向左)读都是同样的正整数。
例如,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;
}
固然,这种写法并非惟一解法,还能够用字符串进行判断,可是相对来讲,本文数字解法效率相对较优