从键盘接收一个数字,判断其是否是回文数。
第一种方法:
public class Test3 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String num=sc.next();
StringBuffer source = new StringBuffer(num);
source.reverse();
String reverseString = new String(source);
if (reverseString.equals(num))
System.out.println("你输入的是回文数");
else
System.out.println("你输入的不是回文数");
}
}
第二种方法:
//判断苏列是否为回文
public void huiwen(String str){
String s=str;//接受传入的字符串
//如果该字符长度小于一,为回文
if(s.trim().length()<=1){
System.out.println("该数是回文");
}else{//长度不为一
//如果第一个字符不等于最后一个字符 一定不是回文
if(s.charAt(0)!=s.charAt(s.length()-1)){
System.out.println("这个数不是回文数");
}else{//如果第一个字符等于最后一个字符 先截取,再传入
//s.length()-1 取不到 后面为开区间
//比如12521 实际截取252
//截取后的字符串作为参数继续传入方法中
huiwen(s.substring(1,s.length()-1));
}
}
}