应用了递归的思想,回文是看第几个和倒数第几个是不是相同,设函数类型是布尔型 ,如果不同则返回值为false,对应着不是回文。
如果相等的话那么第几个+1 倒数第几个-1,在比较。直到n=0或n=1结束。当然就1个的话也是回文。
//张华锦
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
String str;
Scanner scanner=new Scanner(System.in);
str=scanner.next();
int s=str.length()-1;
int i=0;
boolean a;
a=abs(s,i,str);
if(a!=true) {
System.out.println(str+" ,不是回文");
}else { System.out.println(str+" ,是回文");
}}
public static boolean abs(int n,int i,String a)
{
if(n==0||n==1)
{return true;
}
else
{
if(a.charAt(i)==a.charAt(n))
{
return abs(++i,--n,a);
}
else return false;
}
}
}
以下是运行结果截图:
总结:
回文主要就是比较,找清楚位置,以及变量的++,--。
运用了递归的思想,先找到结束条件,函数自己调用自己,改变变量值,再传给函数。