共計 713 個字符,預計需要花費 2 分鐘才能閱讀完成。
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;
}
丸趣 TV 網 – 提供最優質的資源集合!
正文完
發表至: Java
2023-12-16