1 问题描述
题目:验证回文串 (难度:0.9)
编写程序,验证一个字符串是否为回文串:是否从前读它和从后读它都是一样的。例如,mom,dad是回文串。该程序接收用户输入的字符串,判断是否为回文串,然后将判断的结果输出。在验证回文串时,忽略大小写、空格和标点。示例输出如图所示。
2 问题分析
可以通过StringBuilder将字符串反转,如果与原字符串相同,则是回文串。如果考虑大小写,可通过toUpperCase将字母都转换为大写再进行比较。
3 源代码
import javax.swing.JOptionPane;
//判断是否为回文串
public class isPString {
public static void main(String[] args) {
StringBuilder str =new StringBuilder();
str.append(JOptionPane.showInputDialog(null));
if(str.toString().toUpperCase().contentEquals(str.reverse().toString().toUpperCase())) {
JOptionPane.showMessageDialog(null, str.reverse()+"是回文","isPString",JOptionPane.INFORMATION_MESSAGE);
}
else {
JOptionPane.showMessageDialog(null,str.reverse()+" 不是回文","isPString",JOptionPane.INFORMATION_MESSAGE);
}
}
}
4 运行结果
5 总结
String类没有反转字符串的方法,所以采用StringBuilder,要熟练掌握String类的重要api。