hello,点进来的小伙伴们,你们好呐!
系列专栏:【牛客刷题】
作者简介:一名双非本科的在读大三小白,我很平凡,学会努力!
一、验证回文字符串
编写程序,验证一个字符串是否为回文串:是否从前读它和从后读它都是一样的。
例如,mom,dad是回文串。该程序接收用户输入的字符串,判断是否为回文串,然后将判断的结果输出。
输入格式:
输入在一行中给出一个字符串。
输出格式:
如果输入的字符串为回文串,则输出yes;否则输出no。
输入样例:
在这里给出一组输入。例如:
mom
输出样例:
在这里给出相应的输出。例如:
yes
解题思路:这题我感觉用java语言实现比较方便,因为java自带的很多的功能函数,这题我们首先判断输入的字符串有无除了数字 字母之外的其他字符,然后把大写转换为小写字母(忽略大小写) ,最后通过reverse()方法反转字符串之后在比较即可!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
StringBuilder str1 = new StringBuilder();
int len = str.length();
for (int i = 0; i < len; i++) {
char ch = str.charAt(i);
//判断字符是否为字母字符和数字字符
if(Character.isLetterOrDigit(ch)){
str1.append(Character.toLowerCase(ch));
}
}
StringBuffer str2 = new StringBuffer(str1).reverse();
if(str1.toString().equals(str2.toString())){
System.out.println("yes");
}
else{
System.out.println("no");
}
}
}