如何判断一个数是回文数 java

如题所述

System.out.println("请输入...");
Scanner in = new Scanner(System.in);
String number = in.next();
System.out.println("您输入的是"+number);
boolean flag = true;
for(int i=0;i<number.trim().length()/2;i++){
//把索引为i位置的字符和它对称索引位置的字符相比,看是否一样
if(!String.valueOf(number.charAt(i)).equals(String.valueOf(number.charAt(number.trim().length()-i-1)))){
flag = false;
break;
}
}
if(flag){
System.out.println("它是回文数");
}else{
System.out.println("它不是回文数");
}

没有加上对输入数据的合法性校验,如果有需要的话,你可以自行对number进行检查,例如校验number是不是数字,是不是负数等等
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-12-26
public static void HuiWenShu(int n)
{
string s = Convert.ToString(n);//把数变成字符串
Console.WriteLine(s);
int lenght = s.Length;//获得长度
int half = lenght / 2;//得到半长
for (int i = 0; i < half; i++)
{
if (s[i] != s[lenght - i - 1])
{
Console.WriteLine("不是回文数");
return;
}
}
Console.WriteLine("是回文数");
}本回答被提问者采纳
第2个回答  2016-12-26
// 群号 451359628
String str = "40966904";
StringBuffer stringBuffer = new StringBuffer(str).reverse();
if (str.equals(stringBuffer.toString())) {
    System.out.println("yes");
} else {
    System.out.println("no");
}

相似回答