java回文字符串判断的方法有哪些
Java中判断回文字符串的方法有以下几种:
- 使用StringBuilder的reverse()方法:将字符串转换为StringBuilder对象,然后使用reverse()方法将字符串反转,最后判断反转后的字符串与原字符串是否相等。
public static boolean isPalindrome(String str) {
StringBuilder sb = new StringBuilder(str);
return str.equals(sb.reverse().toString());
}
- 使用递归:判断字符串的第一个字符与最后一个字符是否相等,如果相等,则递归判断去掉第一个和最后一个字符的子串是否是回文字符串。
public static boolean isPalindrome(String str) {
if (str.length() <= 1) {
return true;
}
if (str.charAt(0) == str.charAt(str.length() - 1)) {
return isPalindrome(str.substring(1, str.length() - 1));
} else {
return false;
}
}
- 使用双指针:分别从字符串的开头和结尾设置两个指针,然后依次比较指针指向的字符是否相等,直到两个指针相遇或者不相等。
public static boolean isPalindrome(String str) {
int i = 0, j = str.length() - 1;
while (i < j) {
if (str.charAt(i) != str.charAt(j)) {
return false;
}
i++;
j--;
}
return true;
}
版权声明
本文仅代表作者观点,不代表米安网络立场。
上一篇:直播网站租用vps云服务器有哪些好处 下一篇:c语言中有多个重载函数如何解决
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。