我能够检查我输入的单词是否是回文。但是我怎么让它检查整个句子呢?比如:一个人,一个计划,一只猫,一只火腿,一头牦牛,一只山药,一顶帽子,一条运河--巴拿马!
这是我的回文:
输出:
输入一句话:一个人,一个计划,一只猫,一只火腿,一头牦牛,一只山药,一顶帽子,一条运河--巴拿马!
这句话不是回文。
//这不也应该是一个回文吗?这就是我要说的。我想输入一个完整的句子。
然而,如果我只说一个词:
输入一句话: abccba
这句话是一个回文。
发布于 2013-11-10 21:04:47
检查回文的最简单方法是颠倒整个字符串,并将其与输入字符串进行比较。
既然你已经有了一种检查回文的方法,只需添加更多的过滤器来删除空格,删除所有标点符号,然后它将适合您需要的句子。
建议使用正则表达式来实现此目的,请参阅How can I remove punctuation from input text in Java?
发布于 2013-11-10 21:02:35
您的代码从执行以下操作开始
String inputWord = sentence.toLowerCase().replaceAll("\\s", "");这将删除句子中的所有空格字符。但它不会删除逗号、连字符和其他要忽略的字符。
发布于 2013-11-10 21:08:54
你必须删除所有无关紧要的符号--空格,引号,任何标点符号。还可以将它们转换为toLower()或toUpper()。虽然,我明白为什么这可能是一个有趣的实验,但它根本不是检查回文的最好方法。你不需要检查每个符号,当然只需要检查一半:)
https://stackoverflow.com/questions/19889925
复制相似问题