Java判断字符串是否是回文有很多种方法,今天我列出其中的三种方法:
public void hui1(String a){ //利用StringBuffer将字符串倒置来判断
StringBuffer c=new StringBuffer(a);
c=c.reverse();
if(a.equals(c.toString()))
{
System.out.println("是回文");
}
else System.out.println("不是回文");
int count=0;
for(int i=0;i<a.length();i++){
if(a.charAt(i)==c.charAt(i)) count++;
}
if(count==a.length()) System.out.println("是");
else System.out.println("否");
}
public void hui2(String a){ //利用String转换成char来判断
String b=a;
int j=b.length()-1;
int count=0;
for(int i=0;i<a.length();i++){
if(a.charAt(i)==b.charAt(j)){ //将字符串转换成字符一个一个来比较,如果相等count加一,最后和字符串的长度比较,如果相等则该字符串是回文
j--;
count++;
}
else
{
System.out.println("否");
return ;
}
}
if(count==a.length()) System.out.println("是");
}
public void hui3(String a){ //对字符串第一个字符和最后一个字符进行比较,然后第二个和倒数第二个……比较下去最后count如果等于字符串长度则是回文
int count=0;
for(int i=0;i<a.length();i++){
if(a.charAt(i)==a.charAt(a.length()-1-i)){
count++;
}
else{
System.out.println("否");
return ;
}
}
if(count==a.length()) System.out.println("是");
}