《java程序设计基础》例题5.6
判断回文字符串
package practice; //三维数组的运算
public class iii {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str="rotor";
int i=0,n;
boolean yn=true;
if(args.length>0)
str=args[0];
System.out.println("str="+str);
n=str.length();
char sChar,eChar;
while (yn &&(i<n/2)) { //算法一
sChar = str.charAt(i);//返回字符串str正整数第i+1个位置的字符
eChar=str.charAt(n-i-1); //返回字符串str倒数第i+1个位置的字符
System.out.println("sChar="+sChar+" eChar="+eChar);
if(sChar==eChar) { //判断两个字符是否相同使用运算符“==”
i++;
}else {
yn=false;
}
}
System.out.println("算法1:"+yn);
String temp = " ",sub1=" "; //算法二
for(i=0;i<n;i++) {
sub1=str.substring(i,i+1); //将str的第i+1个字符截取出来赋给subi
temp=sub1+temp; //将截下来的字符放在字符串temp的首位置
}
System.out.println("temp="+temp);
System.out.println("算法2:"+str.equals(temp)); //判断str与temp是否相等
}
}