如何修正代码 , 使输出要么是返回 , 要么不是返回

我正在写一个程序 , 它读取一个包含单词列表的文件 , 并将告诉用户该单词是否回文。 我的代码哪里出错了 ? 结果显示 , 它们都是棕榈树 , 而它们不是。

我试过改变循环。 我开始觉得可能是同时循环 , 但我需要这个扫描文件。

  File file = new File("dictionary.txt");
  Scanner INPUT = new Scanner(file); 

  while (INPUT.hasNextLine()) {      

         String forward = INPUT.nextLine(); String reverseText = forward;

        for(int i = forward.length() - 1; i >= 0; i--)
        reverseText += forward.charAt(i);

    if (reverseText.equals(forward))     
        System.out.println(forward + " is a palindrome");        
    else    
        System.out.println(forward + " is not a palindrome");
    }     

我看了一些 youtube 视频 , 读了很多代码片段。 我是 Java 的新手 , 但是回文代码似乎是正确的。 问题是文件的读取吗 ?


EN From: How to fix code so output is either a palindrome or not

6 Comments

  1. 谢谢 , 但这给了我同样的结果 : 室内问题。 passerby is not a palindrome absobloominglutely is not a palindrome nana is not a palindrome banana is not a palindrome the is not a palindrome jumps is not a palindrome over is not a palindrome the is not a palindrome lazy is not a palindrom a is not a palindrome mm is not a palindrome noon is not a palindrome radar is not a palindrome redder is not a palindrome racecar is not a palindrome redivider is not a palindrome tattarrattat is not a palindrome Goodbye !
  2. 所有级别提示 : 学习和使用调试 , 您不会再需要帮助了
  3. 您需要将第一个变量设置为空字符串 , 然后添加到它中。 另外 , 您需要使输入字符串的大小写 , 否则相等的比较将考虑大写字符 ( ie Redder Handler redder ) 。 另一个需要考虑的问题是删除 whitespace ( 字符串末尾的空间和标签 ) , 因为它会破坏比较。

            File file = new File("dictionary.txt");
            Scanner INPUT = new Scanner(file);
    
            while (INPUT.hasNextLine()) {
    
                String forward = INPUT.nextLine().toLowerCase().trim();
                String reverseText = "";
    
                for(int i = forward.length() - 1; i >= 0; i--)
                    reverseText += forward.charAt(i);
    
                if (reverseText.equals(forward))
                    System.out.println(forward + " is a palindrome");
                else
                    System.out.println(forward + " is not a palindrome");
            }
    
  4. @Peta 真的吗 ? 因为如果我只是改变用户 7 说的话 , 试一下你在评论中列出的所有单词 , 那么它似乎都很有效。 请参见 IDE 。

More articles:

  • 如何在 python 代码中获取. jar 执行的输出 ?
  • 如何从 JAX-WS Web 服务的编程授权检查中返回正确的 HTTP 状态代码?
  • 如何创建一个泛型方法来返回枚举的值而不是其常量 ?
  • gradle jacoco 多项目。 如何输出终端中所有项目的代码覆盖?
  • 如何从 java 代码中更改 GATE 中 ANNIE 资源的默认值?
  • 我该如何修改代码 ?
  • 如何找出为什么 xlc 返回代码是非零?
  • 如何配置 JUnit Ant 任务只产生故障输出?
  • 如何从源包而不是资源目录加载文件
  • java 中的最终初始化可以推迟 , 这如何防止无意中返回 null ?
  • <t>为什么 TypeLiteral getRawType 方法返回类而不是类? </t></?></t>
  • 为什么这个代码输出是"线程:线程.",而不是"可运行的:线程."?
  • 如何将多个存储过程传递到 SSIS 中的脚本任务 C# 代码并生成输出文件 ?
  • 如何返回到文件 java 中的行
  • 如何强制 MATLAB 在 CPU 上而不是 GPU 上运行深度学习代码?
  • 如何在 JavaMongo API 中检索 int 数组而不是 Integers 列表?
  • 如何强制 javax xslt 转换器使用 utf-8 而不是 html 实体来编码国家字符 ?
  • Drupal View 的路径。 如何使 drupal view 的节点链接返回查看页面而不是节点类型
  • 循环程序返回"菜单"
  • 如何使用酒店名而不是码头上的 IP ?
  • 我该如何解释 jstat 输出的这些狭窄的 * 峰值 ?
  • 如何使用 Instrumentation. 从 asm 代码中正确地重新转换类 ( ) ?
  • 我如何添加两个按钮 ( 一个返回 , 一个是下一个 ) 在滚动视图下 , 在屏幕上填充 TextView 和 ImageView , android 。
  • 如何只为 Http 状态代码 500 配置重试模板?
  • 如何使用 Android 上的 GPS 输出位置 ?
  • 如何确定两行输入之间的变量?
  • 为什么代码仍在"返回"之后运行
  • 如何在 scala 中从 if - 其他块返回 int 而不是任何 Val ?
  • Scala : Java到Scala , 如何消除 setter 和 getter 并减少代码大小
  • android 和 proguard 与 jackrabbit-webdav : proguard 返回错误代码 1 。 见控制台