回文字符串有个特性,即不管是正着读还是反着读都是一样的,例如adcba.
判断回文的代码实现如下:
package com.threeTop.www;
/**
* 判断一个字符串是否为回文串
* @author wjgs
*
*/
public class StringUtils {
/**
* 判断回文字符串
* @param str
* @return
*/
public static boolean isPalindrome(String str)
{
if(str==null||str.length()==0)
{
throw new RuntimeException("字符串为空");
}
int mid=(str.length()-1)/2;
for(int i=0;i<=mid;i++)
{
if(str.charAt(i)!=str.charAt(str.length()-1-i))
{
return false;
}
}
return true;
}
public static void main(String []args)
{
System.out.println(StringUtils.isPalindrome("abcba"));
System.out.println(StringUtils.isPalindrome("abccba"));
System.out.println(StringUtils.isPalindrome("abdca"));
}
}