You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在忽略空格判断回文后恢复原空格输出?(Java回文作业)

解决Java回文判断中保留原输入空格输出的问题

你的代码核心问题是直接覆盖了原输入字符串:执行wasabi = wasabi.replace(" ","");后,原带空格的输入内容已经被替换掉了,所以输出时自然拿不到带空格的版本。只需要保留原输入的副本,就能解决这个问题。

修改后的代码

import java.util.Scanner;

public class LabProgram {
   public static void main(String[] args) {
   
   Scanner twice = new Scanner(System.in);
   // 保留原输入的副本,不做任何修改
   String originalWasabi = twice.nextLine();
   // 用新变量处理空格去除、反转和判断逻辑
   String processedWasabi = originalWasabi.replace(" ","");
   String ibasaw = "";
   
   for(int i = processedWasabi.length()-1;i>=0;i--)
   {
      ibasaw=ibasaw+processedWasabi.charAt(i);
   }
   if(processedWasabi.toLowerCase().equals(ibasaw.toLowerCase()))
   {
      // 输出时调用原输入变量,保留空格格式
      System.out.println("palindrome: " + originalWasabi);
   }
   else
   {
      System.out.println("not a palindrome: " + originalWasabi);
   }
 }
}

关键改动说明

  • 新增originalWasabi变量存储用户输入的原始内容,全程不修改;
  • 用processedWasabi变量单独处理空格去除、反转和回文判断逻辑;
  • 输出结果时使用originalWasabi,确保显示带空格的原始输入格式。

这样不管输入是race car还是其他带空格的内容,判断逻辑会忽略空格,输出却能完整保留原始格式。

内容的提问来源于stack exchange,提问作者Rob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 22:33:18