需求:键盘输入一个整数 x 。
如果 x 是一个回文整数,打印 是回文数,否则,返回 不是回文数。
解释:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
import java.util.Scanner;
public class day {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数");
int x = sc.nextInt();//将键盘获取的数值赋值给x
int sum = 0;//定义回文数sum
int y = x;//用y接受x的数值以便于后面进行比较
while (x > 0) { //利用while循环将数值调转
int ge = x % 10;//获取个位数数值
x = x / 10;//将数值除10以便获取十位数
sum = sum * 10 + ge;//将每次获取的个位数调转赋值给sum
}
//利用三元运算符判断是否是回文数
System.out.println(sum == y ? "是回文数" : "不是回文数");
}
}
总体思想是将获取到的整数调转使其个位数和最高位调换位置,然后通过调转后的数值与原先的的数值进行对比获取是不是回文数;