当前位置: 首页 > 知识库问答 >
问题:

Java说一切都是回文

凌长恨
2023-03-14

我正在编写一个程序,从一个文件中读取文本,然后确定它是否是回文。唯一的问题是,它认为一切都是一体的。这是我的代码:

   String input = "";
   String reversed = "";
   String answer = "";
   int count = 0;
   int low = 0;
   int high = input.length() - 1;

   outF.println("Palindrome   Input String            New String");

   while (inF.hasNext()){
       input=inF.nextLine();
       reversed = new StringBuffer(input).reverse().toString();
        boolean isPalindrome;
       while (low < high) {
         isPalindrome = true;
           if (input.charAt(low) != input.charAt(high)) {
            isPalindrome = false;
            break;
         }
         low++;
         high--;

       }
       if (isPalindrome = true){
          answer = "yes";}
       else{
           answer = "no";}

       outF.printf("  %-10s %-23s %s %n", answer, input.trim(), reversed.trim());

       count++;
   }

下面是我的输出:

Palindrome   Input String            New String
  yes        STAR RATS               STAR RATS 
  yes        STAT                    TATS 
  yes        LEVEL                   LEVEL 
  yes        MALAYALAM               MALAYALAM 
  yes        Solos                   soloS 
  yes        kaya                    ayak 
  yes        Radar                   radaR 
  yes        Regal lageR             Regal lageR 
  yes        Straw wartS             Straw wartS 
  yes        RSTUVWXYZXWVUTSR        RSTUVWXZYXWVUTSR 
  yes        DeifieD                 DeifieD 
  yes        ABBA                    ABBA 
  yes        mama anna mama          amam anna amam 
  yes        noel leon               noel leon 
  yes        Racecar                 racecaR 
  yes        galleonnoelag           galeonnoellag 
end of program 16 strings were processed

有人知道是什么引起的吗?我在按照我的书上说的去做,找出某件事是不是回文,它是

我移动了一些东西,使其看起来像这样:布尔isPalindrome=true;while(低<高){

           if (input.charAt(low) != input.charAt(high)) {
            isPalindrome = false;
            break;
         }
         low++;
         high--;

       }
       if (isPalindrome ){
          answer = "yes";}
       else{
           answer = "no";}

       outF.printf("  %-10s %-23s %s %n", answer, input.trim(), reversed.trim());

       count++;

但它仍然没有起作用。如果我让它保持原样,它会试图说isPalindrome没有定义

共有1个答案

席乐童
2023-03-14
while (inF.hasNext()){
   input=inF.nextLine();
   reversed = new StringBuffer(input).reverse().toString();
    boolean isPalindrome;
int low = 0;
int high = input.length() - 1;

   while (low < high) {
     isPalindrome = true;
       if (input.charAt(low) != input.charAt(high)) {
        isPalindrome = false;
        break;
     }
     low++;
     high--;

   }

在while循环中声明lowhigh变量。

 类似资料:
  • 本文向大家介绍说说你对“在react中,一切都是组件”的理解相关面试题,主要包含被问及说说你对“在react中,一切都是组件”的理解时的应答技巧和注意事项,需要的朋友参考一下 [react] 说说你对“在react中,一切都是组件”的理解

  • “尽管以C++为基础,但Java是一种更纯粹的面向对象程序设计语言”。 无论C++还是Java都属于杂合语言。但在Java中,设计者觉得这种杂合并不象在C++里那么重要。杂合语言允许采用多种编程风格;之所以说C++是一种杂合语言,是因为它支持与C语言的向后兼容能力。由于C++是C的一个超集,所以包含的许多特性都是后者不具备的,这些特性使C++在某些地方显得过于复杂。 Java语言首先便假定了我们只

  • 问题内容: 除了之外,还有Python内置的数据类型吗? 该类型的值在哪里?Python 3呢? 问题答案: 总是小于Python 2中的任何数据类型(请参阅参考资料)。 在Python 3中,这已更改;现在在没有合理的自然排序的情况下对事物进行比较会导致结果。从 3.0版“新增功能”更新 : Python 3.0简化了排序比较的规则: 排序比较操作符(,,,)提出一个例外,当操作数没有意义的自然

  • 下面是我的异步函数从DB中读取值并在控制台上记录一些东西。但由于某种原因它没有发生。 因此,我创建了一个许诺数组,然后继续等待所有许诺的解决,因为许诺将从DB读取。但await on promission.all不是暂停代码的执行,也不是等待all promission解析,而是将控制权传递回调用函数。我这里有没有遗漏什么东西? 以上调用的输出为: 理想情况下,输出应该在下面(因为我正在等待所有的

  • ACID是数据库事务执行的四大基本要素,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。 1、原子性 整个事务中的所有操作,要么全部完成,要不全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被roolback回滚到事务开始前的状态,就像这个事务从未执行过一样。 2、一致性 事务必须始终保持系统处于一

  • 本文向大家介绍请你说一说HTTP返回码相关面试题,主要包含被问及请你说一说HTTP返回码时的应答技巧和注意事项,需要的朋友参考一下 参考回答: HTTP协议的响应报文由状态行、响应头部和响应包体组成,其响应状态码总体描述如下: 1xx:指示信息--表示请求已接收,继续处理。 2xx:成功--表示请求已被成功接收、理解、接受。 3xx:重定向--要完成请求必须进行更进一步的操作。 4xx:客户端错误