从控制台输入一个数,如果是回文数输出是,不是回文数输出否。
package a1;
import java.util.Scanner;
public class HuiWenShuClass {
public static void main(String[] args) {
// TODO Auto-generated method stub
int number =0,d5,d4,d3,d2,d1;
Scanner reader = new Scanner(System.in);
System.out.println("输入一个1至99999之间的数");
number = reader.nextInt();
// 判断Number在1~99999的条件
if(number>=1 && number<=99999){
// 计算最高位d5
d5 = number/10000;
// 计算千位d4
d4 = number%10000/1000;
// 计算百位d3
d3 = number%1000/100;
// 计算10位
d2 = number%100/10;
// 计算个位
d1 = number%10;
// 判断number是五位数的条件
if(d5!=0){
System.out.println(number+"是五位数!");
// 判断是回文数的条件
isAlive(d5==d1 && d4==d2,number);
}else if(d4!=0){ //判断number是四位数的条件
System.out.println(number+"是四位数!");
isAlive(d4==d1 && d3==d2,number);
}else if(d3!=0){ //判断number是三位数的条件
System.out.println(number+"是三位数");
isAlive(d3==d1, number);
}else if(d2!=0){ //判断number是两位数的条件
System.out.println(number+"是两位数");
isAlive(d2==d1, number);
}else if(d1!=0){
System.out.println(number+"是一位数");
System.out.println(number+"是回文数");
}
}else{
System.err.printf("\n%d不在1至99999之间",number);
}
reader.close();
}
private static void isAlive(boolean is,int number){
if(is){
System.err.println(number+"是回文数");
}else{
System.err.println(number+"不是回文数");
}
}
}
字符串判断
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入一个字符串: ");
String word = sc.next();
if (word.equals(new StringBuffer(word).reverse().toString()))
System.out.println("输入字符串是回文.");
else
System.out.println("输入字符串不是回文.");
sc.close();
}