1、计划
需求描述:使用递归方式判断某个字符串是否是回文。
预估开发时间:半个小时。
填写的项目数据:写入的字符串。
2、开发
设计程序:
使用了Scanner包,String包用来储存输入的字符串。函数charge,有三个行参,第一个为字符串的长度,第二个为常数0,第三个为该字符串。如果
是回文返回1,不是回文返回0。
程序实现:
源程序如下:
1 import java.lang.String; 2 import java.util.Scanner; 3 public class Palindrome { 4 public static void main(String[] args){ 5 Scanner in=new Scanner(System.in); 6 String str=in.nextLine(); 7 int a=str.length()-1; 8 int b=0; 9 int c=charge(a,b,str); 10 if(c==1) System.out.println("true"); 11 if(c==0) System.out.println("fault"); 12 } 13 public static int charge(int a,int b,String str){ 14 if(str.charAt(a)==str.charAt(b)){ 15 if((a-b)!=1&&(a-b)!=2) 16 return charge(a-1,b+1,str); 17 else return 1; 18 }else return 0; 19 } 20 }
编译程序,修复并记录所发现的缺陷,并填写缺陷记录日志
无
3、总结
数组下标总是越界,应多多注意。