回文指的是一段正向读反向读都一样的字符串,如“12321”;下面是一个用于判断字符串是否回文的java小程序
代码如下:
import java.util.Scanner;
public class trr{
static int length,z=1;
static Scanner input =new Scanner(System.in);
public static void main(String args[]) {
String s;
s=input.next();
if(sa(s))System.out.println("是回文");
else System.out.println("不是回文");
}
static public boolean sa(String s)
{
//判断字符串长度是否为1或0,是的话返回true
if(s.length()==0||s.length()==1) {return true;}
else
//判断字符串首尾是否相同
if(s.substring(0, 1).equals(s.substring(s.length()-1, s.length())))
{
//将字符串去头去尾调用sa函数
if(sa(s.substring(1, s.length()-1)))return true;
else return false;
}
else return false;
}
}
输入输出结果截图
设计思路:运用递归思想。对字符串进行首尾字符是否相等判断,相等则去头去尾,再次进行头尾判断,若字符串长度已经为0或1则直接返回true;只有在子字符串判断后返回true,当前函数体才会返回true,否则直接返回false,这样一来若字符串中某个对称位置上字符不相同,则最终就会返回false;
日期 | 开始时间 | 结束时间 | 中断时间 | 净时间 | 活动 | 备注 |
9.23 | 16:20 | 16:23 | 构思程序 | |||
9.23 | 16:23 | 16:28 | 查询学习可能需要的函数 |
子字符串截取函数:String.substring(int 初始位置,int 结束位置); 返回字符串长度:int String.length() |
||
9.23 | 16:28 | 16:40 | 初步编写程序 | |||
9.23 | 16:40 | 16:50 | 调试更改程序并完成程序 |