在Java中,如何检查字符串是否是回文?

很酷的家伙

我正在尝试编写一个程序来检查字符串是否是回文,到目前为止,我知道我在正确的路径上,但是当我输入代码时,它将永远运行。我不知道问题出在哪里,希望能帮助您找到解决方案。在我的程序中,我希望用户在Printpalindrome方法中输入一个或多个单词,然后程序应知道字符串是否为回文。

这是我的代码:

      ...
      Scanner console = new Scanner (System.in);
      String str = console.next(); 
      Printpalindrome(console, str);
    }

    public static void Printpalindrome(Scanner console, String str) {
      Scanner in = new Scanner(System.in);       
      String original, reverse = "";



      str = in.nextLine();

      int length = str.length();

      for ( int i = length - 1; i >= 0; i-- ) {
        reverse = reverse + str.charAt(i);
      }

      if (str.equals(reverse))
        System.out.println("Entered string is a palindrome.");  

      }
   }
丹尼斯·塞古雷(DenysSéguret)

由于这一行:

n = in.nextLine();

您的程序正在等待第二个输入,但是在进入该功能之前,您已经有一个输入。

删除此行,它可以工作。

这是您的程序,已清理(并经过测试):

public static void main(String[] args){
    Scanner console = new Scanner (System.in);
    String n = console.next(); 
    Printpalindrome(n);
}

public static void Printpalindrome(String n){
    String reverse = "";
    for ( int i = n.length() - 1; i >= 0; i-- ) {
        reverse = reverse + n.charAt(i);
        System.out.println("re:"+reverse);
    }
    if (n.equals(reverse))
        System.out.println("Entered string is a palindrome."); 
    else
        System.out.println("Entered string is NOT a palindrome."); 
}

当然,这不是最好的算法,但是您已经知道,SO上有许多QA具有更快的解决方案(提示:不要构建字符串,只比较字符)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检查字符串是否是Java中的回文

来自分类Dev

检查字符串是否是Java中的回文

来自分类Dev

检查字符串是否是回文

来自分类Dev

检查字符串是否是回文

来自分类Dev

如何检查字符串是否是回文JavaScript

来自分类Dev

如何检查字符串是否是回文

来自分类Dev

检查字符串是否是回文(使用方法)

来自分类Dev

使用C中的函数检查字符串是否为回文

来自分类Dev

检查字符串是否是Java中Class的实例

来自分类Dev

如何检查字符串是否在数组中?

来自分类Dev

如何检查字符串是否在JavaScript数组中?

来自分类Dev

如何检查字符串中是否存在“ @”

来自分类Dev

如何检查字符串是否在text []中?

来自分类Dev

如何检查字符串中是否存在行?

来自分类Dev

如何检查字符串是否是 Python 中的数字?

来自分类Dev

如何检查字符串中是否存在“#”标签?

来自分类Dev

如何检查字符串是否包含字符串数组中的字符串?

来自分类Dev

如何在 Java 中检查字符串是否包含回车 (CR) 或换行 (LF) 字符

来自分类Dev

如何在Java / Android中检查字符串值是否属于UUID?

来自分类Dev

如何在Java中检查字符串是否为日期时间格式

来自分类Dev

如何检查字符串是否包含Java中的任何运算符

来自分类Dev

如何在Java中检查字符串是否为字母数字

来自分类Dev

如何检查字符串以查看它在Java中是否包含8或9

来自分类Dev

如何仅在Java中检查字符串是否由逗号组成?

来自分类Dev

检查字符串是否等于Android / Java中的字符串

来自分类Dev

如何检查字符串是否包含列表/数组中的任何字符串

来自分类Dev

如何检查字符串是否在Pascal中包含字符串

来自分类Dev

如何在Liquid中检查字符串是否以特定的子字符串结尾?

来自分类Dev

如何检查字符串是否具有列表中的子字符串?

Related 相关文章

  1. 1

    检查字符串是否是Java中的回文

  2. 2

    检查字符串是否是Java中的回文

  3. 3

    检查字符串是否是回文

  4. 4

    检查字符串是否是回文

  5. 5

    如何检查字符串是否是回文JavaScript

  6. 6

    如何检查字符串是否是回文

  7. 7

    检查字符串是否是回文(使用方法)

  8. 8

    使用C中的函数检查字符串是否为回文

  9. 9

    检查字符串是否是Java中Class的实例

  10. 10

    如何检查字符串是否在数组中?

  11. 11

    如何检查字符串是否在JavaScript数组中?

  12. 12

    如何检查字符串中是否存在“ @”

  13. 13

    如何检查字符串是否在text []中?

  14. 14

    如何检查字符串中是否存在行?

  15. 15

    如何检查字符串是否是 Python 中的数字?

  16. 16

    如何检查字符串中是否存在“#”标签?

  17. 17

    如何检查字符串是否包含字符串数组中的字符串?

  18. 18

    如何在 Java 中检查字符串是否包含回车 (CR) 或换行 (LF) 字符

  19. 19

    如何在Java / Android中检查字符串值是否属于UUID?

  20. 20

    如何在Java中检查字符串是否为日期时间格式

  21. 21

    如何检查字符串是否包含Java中的任何运算符

  22. 22

    如何在Java中检查字符串是否为字母数字

  23. 23

    如何检查字符串以查看它在Java中是否包含8或9

  24. 24

    如何仅在Java中检查字符串是否由逗号组成?

  25. 25

    检查字符串是否等于Android / Java中的字符串

  26. 26

    如何检查字符串是否包含列表/数组中的任何字符串

  27. 27

    如何检查字符串是否在Pascal中包含字符串

  28. 28

    如何在Liquid中检查字符串是否以特定的子字符串结尾?

  29. 29

    如何检查字符串是否具有列表中的子字符串?

热门标签

归档