给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
示例 1:
输入:x = 121
输出:true
示例 2:
输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:
输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。
提示:
-231 <= x <= 231 - 1
题目来自:
IDEA 编译器代码
package com.demo;
import java.util.Scanner;
public class 回文数 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
//练习 回文数
//回文数是指正序(从左到右)和(从右到左)读都是一样的数 e.g:121是回文 123不是
//核心思路:把原来的数倒过来和原来的数字一样
//1.定义数字
int x=input.nextInt();
//记录倒过来之后的结果
int num=0;
//定义一个临时变量用于记录x原来的值,用于最后的比较
int temp=x;
//2.利用循环开始
while(x!=0){
//从右往左获得每一个数字
int ge =x%10;//获取个位数字
//修改一下x记录的值
x=x/10;
//把当前获取的数字拼接到最右边
num=num*10+ge;
}
//3.打印num
System.out.println(num);
//4.比较
System.out.println(num==temp);
}
}
力扣编译
class Solution {
public boolean isPalindrome(int x) {
int temp=x;
int num=0;
if(x<0)
return false;
else
{
while(x!=0){
int ge=x%10;
x=x/10;
num=num*10+ge;
}
if(num==temp)
return true;
else
return false;
}
}
}