gpt4 book ai didi

java - java回文错误

转载 作者:行者123 更新时间:2023-12-01 18:01:33 25 4
gpt4 key购买 nike

我在 Java 中遇到问题。我正在编写一个程序来检查给定的文本是否是回文。我 99% 确定我的代码是正确的,但我无法得到好的结果。这是代码。

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
StringBuilder sb = new StringBuilder();

System.out.print("Enter a line of text to check if palindrome: ");
String text = scan.nextLine();
String revText = text.replaceAll("[^A-Za-z]", "").toLowerCase().trim(); /*
* Using regex here... everything that is not
* (^) from A-Z (capital) to a-z replace with
* ("") in revText.
*/
sb.append(revText).reverse().toString();

System.out.println("Reversed: " + sb);
System.out.println("Normal: " + revText);

System.out.println(sb.equals(revText));

scan.close();
}

例如我输入:

Enter a line of text to check if palindrome: Anna2023
Reversed: anna
Normal: anna
false

为什么是假的? ;/

最佳答案

尝试

System.out.println(revText.equals(sb.toString()));

sb 不等于字符串,因为它不是 String。它是一个用于构建字符串的容器。打印 sb 显示 String 的原因是 System.out.println 会根据给定的任何内容调用 toString

关于java - java回文错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40577764/

25 4 0