判断整数是否是对称数
不使用转换为字符串的函数:
import java.util.Scanner; /* 判断回文数 * 由用户输入一个整数,判断是不是回文数(完全对称的数),如果是 打印 true, 否则打印false * 提示:本题仅要求判断一个五位数是不是回文数 * 通过除法运算和求模运算符,可以分别求出一个五位数的每位上的值,然后进行比较。 * Palindrome 回文数 */ public class zuoye0352 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("输入要判断是否为回文数的数值:"); int i=sc.nextInt(); String str=""+i; if(str.length()%2==0){ System.out.println(i+"不是回文数!"+str.length()%2); } //判断反转后 值是否相等 从而 else if(i==fanzhuan(i)){ System.out.println(i+"是回文数~"); } else System.out.println(i+"不是回文数!"); } private static int fanzhuan(int input) { int output = 0;// while(input>0){ //output= output*10; output=output*10+input%10; input=input/10; } return output; } }
转换为字符串后判断:
/** * 对称数就是顺读和反读都一样吗,你可以用一个String接受用户输入, * 然后把它反转,判断前后是不是equals就可以了。 * 例如 123321就是对称数 */ public static void RegularNumberTest() { String num1 = new Scanner(System.in).nextLine(); String num2 = “”; for (int j = num1.length() – 1; j >= 0; j–) { char a = num1.charAt(j); num2 += a; } if (num2.equals(num1)) { System.out.println(num1 + “是对称数.”); }else{ System.out.println(num1 + “不是对称数.”); } }