Example 1:
Input: x = 121
Output: true
Explanation: 121 reads as 121 from left to right and from right to left.
Example 2:
Input: x = -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
Input: x = 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
static void Main(string[] args) { IsPalindrome(); } private static void IsPalindrome() { int x = 121; bool isPalindrome = IsPalindrome(x); Console.WriteLine($"回文:{isPalindrome}"); Console.ReadKey(); } private static bool IsPalindrome(int x) { //负数 或者 个位数是 0 不算 if (x < 0 || (x % 10 == 0 && x != 0)) { return false; } int revertedNumber = 0; while (x > revertedNumber) { revertedNumber = revertedNumber * 10 + x % 10; x /= 10; } return x == revertedNumber || x == revertedNumber / 10; }