这里有两种方式(基于数组),详细请看代码
代码1:
public static boolean isPalindromeString(String string){
if (string.length() < 1){
throw new RuntimeException("请输入长度大于1的字符串!");
}
//先将字符串转为数组
char[] stringChar = string.toCharArray();
//解决字符串长度的奇偶问题
int length = stringChar.length;
int size = length%2==0?length/2:(length+1)/2;
//判断是否为回文字符串
for (int i = 0; i < size; i++) {
if (stringChar[i] != stringChar[length-1-i]){
return false;
}
}
return true;
}
代码2:
public static boolean isPalindromeString(String string){
if (string.length() < 1){
throw new RuntimeException("请输入长度大于1的字符串!");
}
//将字符串通过数组反转
char[] stringChar = string.toCharArray();
char[] newStringChar = new char[string.length()];
int length = stringChar.length;
for (int i = 0; i < stringChar.length; i++) {
newStringChar[length-1-i] = stringChar[i];
}
String newString = new String(newStringChar);
//通过equals()方法进行比较
return string.equals(newString)?true:false;
}