package test1;
import java.util.Scanner;
/**
- :一个 5 位数,判断它是不是回文数。
- 即 12321 是回文数,个位与万位相同,十位与千位相同
- 即 数组的char[i]=char[数组的长度-i-1]i为for循环的变量
*/
public class Test5 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println(“请输入一个正整数:”);
boolean flag=true;
long x=sc.nextLong();
String s=Long.toString(x);
char [] ch=s.toCharArray();
int y=ch.length;
for(int i=0;i<y/2;i++) {
if(ch[i]!=ch[y-i-1]){flag=false;}
}
if(flag==true) {
System.out.println(“这是一个回文数”);
}else {
System.out.println(“这不是一个回文数”);
}
}
}
另外一种:将用户输入类型转化为int[]可以不用做数据类型的2次转化
package test1_5_7_2019;
import java.util.Scanner;
public class Test6 {
/*此处也可以直接获取用户输入的类型为int[]*/
public static void main(String[] args) {
int length=5;
int [] x=new int[length];
Scanner sc=new Scanner(System.in);
for(int i=0;i<length;i++){
x[i]=sc.nextInt();
//此处判断每次输入的值不能大于10 保证它的值为5位数
如果输入的值大于10 让用户一直输出直到输出正确为止
while(x[i]>10) {
System.out.println("输入有误请重新输入");
x[i]=sc.nextInt();
continue;
}
}
for(int i=0;i<length;i++) {
System.out.print(x[i]+"");
}
System.out.print("\n");
boolean bl=true;
for(int i=0;i<x.length/2;i++) {
if(x[i]==x[x.length-i-1]) {
bl=true;
}else {
bl=false;
}
}
if(!bl) {
System.out.println("这不是一个回文数!");
}else {
System.out.println("这是一个回文数!");
}
}
}