Java,在将所有大写字符转为小写字符、并移除所有非字母数字字符之后,短语正着读反着读都一样
时间: 2024-12-17 09:52:52 浏览: 3
在Java中,要实现这个功能,你可以先创建一个字符串,然后遍历输入的短语,将每个字符转换为小写,并通过`Character.isLetterOrDigit()`方法检查是否为字母或数字。如果满足条件,则添加到结果字符串中。最后比较原短语和处理后的短语是否字符顺序相反但内容一致。
以下是一个简单的示例:
```java
public class StringPalindrome {
public static void main(String[] args) {
String phrase = "Hello World! 123@456";
StringBuilder processedPhrase = new StringBuilder();
for (int i = 0; i < phrase.length(); i++) {
char c = Character.toLowerCase(phrase.charAt(i)); // 转换为小写
if (Character.isLetterOrDigit(c)) { // 检查是否为字母或数字
processedPhrase.append(c);
}
}
boolean isPalindrome = processedPhrase.toString().equals(new StringBuilder(processedPhrase.reverse()).toString()); // 判断处理后的字符串是否为回文
System.out.println("原始短语: " + phrase);
System.out.println("处理后的短语: " + processedPhrase.toString());
System.out.println("是否为回文: " + isPalindrome);
}
}
```
在这个例子中,输入的短语 "Hello World! 123@456" 经过处理后会变成 "helloworld123456",因为只保留了字母和数字,并且全部转为了小写。最终确认它是回文的,因为正读反读都是一样的。
阅读全文