JAVA判断回文数的两种方法

这篇博客介绍了判断一个整数是否为回文数的两种方法:一种是通过将整数转换为字符串并比较首尾字符,另一种是拆分每位数并重新组合进行比较。这两种方法都有效地检查了数字的正序和倒序是否相同。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数

方法一

通过==String.valueOf()方法把整数转换为字符串,再用toCharArray()==方法将字符串转化为字符数组,通过数组的第一个和最后一个比较是否相等判断回文。

    public static boolean isPalindrome(int x) {
        if(x < 0) return false; //负数不是回文
        if(x < 10) return true; //个位数为回文数
        String s = String.valueOf(x); //整数转字符串
        char[] c = s.toCharArray(); //字符串转字符数组
        int len  = c.length;
        boolean flag = false;
        for(int i = 0; i < len / 2; i++){
            if(c[i] != c[len - 1 - i]){
                return false;
            }
        }
        return true;
    }

方法二

把整数的每位都拆开,再从个位开始通过计算,看最后得出的数是否与原来的数相等。

public static boolean isPalindrome(int x) {
        if(x < 0) return false;
        if(x < 10) return true;
        int ret = x;
        int y = 0,m = 0;
        while(x!= 0){
            m = x % 10;
            y = y * 10 + m;
            x /= 10;
        }
        return y == ret;
    }
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值