写一个Java代码判定给定的字符序列是否为回文
时间: 2024-12-02 15:19:14 浏览: 12
aba.rar_ABA_判断以@为结束符的字符串是否_回文序列
在Java中,判断一个字符串是否是回文可以使用双指针法,一个从前往后扫描,一个从后往前扫描,如果两个指针指向的字符相同,则继续移动;如果不相同则返回false。当两个指针相遇或者交错时,说明字符串是回文。
以下是简单的Java代码示例:
```java
public class Main {
public static boolean isPalindrome(String str) {
// 转换为小写并移除非字母数字字符
str = str.toLowerCase().replaceAll("[^a-z0-9]", "");
int left = 0;
int right = str.length() - 1;
while (left < right) {
if (str.charAt(left) != str.charAt(right)) {
return false;
}
left++;
right--;
}
return true;
}
public static void main(String[] args) {
System.out.println(isPalindrome("A man, a plan, a canal: Panama")); // 输出: true
System.out.println(isPalindrome("race a car")); // 输出: false
}
}
阅读全文