第二周 第六天 七月七日

编写判断回文数字的方法,并调用测试

package chao;
import java.util.Scanner;
public class huiwenfangfa {
    public class Method09 {
        
        public static void main(String[] args) {
            long num= 0;
            Scanner sc = new Scanner(System.in);
            do {
                System.out.print("请输入一个正整数:");
                 num = sc.nextLong();
                 if(num<1) {
                     System.out.println("您的输入有误!!!!!!!请重新输入!"); 
                 }
            } while (num<1);
            String str ="";        
             str=isPalindromeNumber(num)? "是回文数":"不是回文数";
            System.out.println(str);
    
        }
        
        public static boolean isPalindromeNumber(long num) {
            int i=0;
            long temp = num;
            String str="";
            String str1="";
            //判断是几位数
            do {
                temp= temp/10;
                i++;
            } while (temp!=0);
            //如果是否是偶数位
            if (i%2==0) {
                for(int j=0;j<(i/2);j++) {
                    long sum = (num/(long)(Math.pow(10, j)))%10;
                    //把整数的前半部分从前到后以String类的形式拼接
                    str=str+sum;
                }
                for(int j=(i-1);j>=(i/2);j--) {
                    long sum = (num/(long)(Math.pow(10, j)))%10;
                    //把整数的后半部分从后到前以String类的形式拼接
                    str1=str1+sum;
                }
                if (str.equals(str1)) {
                    return true;
                }
            }
            //判断是否是奇数位
            else if (i%2==1) {
                for(int j=0;j<(i/2);j++) {
                    long sum = (num/(long)(Math.pow(10, j)))%10;
                    //把整数的前半部分从前到后(不拼接整数中间那个数)以String类的形式拼接
                    str=str+sum;
                }
                for(int j=(i-1);j>(i/2);j--) {
                    long sum = (num/(long)(Math.pow(10, j)))%10;
                    //把整数的后半部分从后到前(不拼接整数中间那个数)以String类的形式拼接
                    str1=str1+sum;
                }
                if (str.equals(str1)) {
                    return true;
                }
            }
            return false;
        }
    
    }

}

 

posted @ 2023-07-08 19:26  财神给你送元宝  阅读(7)  评论(0编辑  收藏  举报