1 package Test;
2
3 import java.util.*;
4
5 public class TestPalindrome {
6 static String str;
7 static Scanner in=new Scanner(System.in);
8 static boolean flag;
9 public TestPalindrome() {
10 // TODO Auto-generated constructor stub
11 }
12 public static boolean handle(int n) //定义判断回文方法
13 {
14 if(n==-1||n==0) //退出循环分支
15 flag=true;
16 else if(str.charAt(str.length()-1-n)==str.charAt(n)) //判断两字符是否相等
17 {
18 if(handle(n-1)) //如果下次两字符相等,进行下次递归判断
19 flag=true;
20 }
21 else flag=false; //如果两字符不相等,则flag=false
22 return flag;
23 }
24 public static void main(String[] args) {
25 // TODO Auto-generated method stub
26
27 str=in.next(); //获取一个字符串
28 if(handle((str.length()-1)/2)) //判断是否为回文
29 System.out.println("该字符串是回文");
30 else System.out.println("该字符串不是回文");
31 }
32
33 }