给定一个字符串,判断其是否为一个回文串。只包含字母和数字,忽略大小写。
注意事项
你是否考虑过,字符串有可能是空字符串?这是面试过程中,面试官常常会问的问题。
在这个题目中,我们将空字符串判定为有效回文。
样例
"A man, a plan, a canal: Panama" 是一个回文。
注意事项
你是否考虑过,字符串有可能是空字符串?这是面试过程中,面试官常常会问的问题。
在这个题目中,我们将空字符串判定为有效回文。
样例
"A man, a plan, a canal: Panama" 是一个回文。
"race a car" 不是一个回文。
import java.util.Scanner;
/**
* 给定一个字符串,判断其是否为一个回文串。只包含字母和数字,忽略大小写。
注意事项
你是否考虑过,字符串有可能是空字符串?这是面试过程中,面试官常常会问的问题。
在这个题目中,我们将空字符串判定为有效回文。
样例
"A man, a plan, a canal: Panama" 是一个回文。
"race a car" 不是一个回文。
* @author Dell
*
*/
public class Test415 {
public static boolean isPalindrome(String s)
{
if(s.equals(""))
return true;
StringBuilder sb=new StringBuilder();
for(int i=0;i<s.length();i++)
{
if((s.charAt(i)>='0'&&s.charAt(i)<='9')||(s.charAt(i)>='a'&&s.charAt(i)<='z'))
sb.append(s.charAt(i));
if(s.charAt(i)>='A'&&s.charAt(i)<='Z')
{
char temp=(char) (s.charAt(i)+32);
sb.append(temp);
}
}
return panduan(sb.toString());
}
public static boolean panduan(String s)
{
for(int i=0;i<s.length();i++)
{
if(s.charAt(i)!=s.charAt(s.length()-i-1))
return false;
}
return true;
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
System.out.println(isPalindrome(s));
}
}