/**
* 最大长颠倒字符串 它的长度应该小于等于整个字符串(长度为L)的的一半 从假设最大颠倒长度为整个的1/2L
* 然后查这个长度的颠倒字符串是否存在 存在就返回,不存在,则继续往下找1/2L-1,以此类推1/2L-1....一直到0。如果为0说明没有
*
*/
String string = "a123ghfuhg321asd131";
// String revString=getLongString(string);
int maxStr = string.length() / 2;
int len = string.length();
String revString = null;
boolean flag = false;
for (int i = maxStr; i >= 0; i--) {
for (int j = 0; j < len; j++) {
if ((j + i + 1) > (len - 1))
continue;
String subString = string.substring(j, j + i + 1);
revString = new StringBuffer(subString).reverse().toString();
int flag1 = string.indexOf(revString);
if (flag1 != -1) {
flag = true;
System.out.println(subString + ":" + revString + ";" + i);
break;
}
}
if (flag)
break;
}