迴文數是指正序(從左向右)和倒序(從右向左)讀都是同樣的正整數。 例如,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; }
固然,這種寫法並非惟一解法,還能夠用字符串進行判斷,可是相對來講,本文數字解法效率相對較優