当前位置:首页 > Java

java如何判断回文数

2026-02-05 14:10:55Java

判断回文数的方法

回文数是指正读和反读都相同的数字。例如,121 和 1221 都是回文数。以下是几种在 Java 中判断回文数的方法。

方法一:转换为字符串反转比较

将数字转换为字符串,反转后与原字符串比较是否相同。

java如何判断回文数

public static boolean isPalindrome(int num) {
    String original = Integer.toString(num);
    String reversed = new StringBuilder(original).reverse().toString();
    return original.equals(reversed);
}

方法二:数学方法反转数字

通过数学运算反转数字,然后与原数字比较是否相同。

java如何判断回文数

public static boolean isPalindrome(int num) {
    if (num < 0) return false;
    int reversed = 0;
    int original = num;
    while (num != 0) {
        reversed = reversed * 10 + num % 10;
        num /= 10;
    }
    return original == reversed;
}

方法三:优化数学方法

仅反转数字的后半部分,与前半部分比较是否相同。这种方法可以减少循环次数。

public static boolean isPalindrome(int num) {
    if (num < 0 || (num % 10 == 0 && num != 0)) return false;
    int reversed = 0;
    while (num > reversed) {
        reversed = reversed * 10 + num % 10;
        num /= 10;
    }
    return num == reversed || num == reversed / 10;
}

方法四:递归实现

使用递归反转数字并比较是否相同。

public static boolean isPalindrome(int num) {
    return num == reverse(num, 0);
}

private static int reverse(int num, int temp) {
    if (num == 0) return temp;
    temp = temp * 10 + num % 10;
    return reverse(num / 10, temp);
}

注意事项

  • 负数不是回文数,可以直接排除。
  • 如果数字以 0 结尾且数字本身不为 0,可以直接排除。
  • 数学方法在处理大数字时可能溢出,需根据实际需求选择合适的方法。

分享给朋友:

相关文章

react 如何判断空

react 如何判断空

判断空值的常见方法 在React中判断变量或状态是否为空,可以通过以下方法实现: 检查null或undefined if (value === null || value === undefine…

如何判断react是否渲染完成

如何判断react是否渲染完成

判断 React 渲染完成的方法 使用 useEffect 钩子 在函数组件中,useEffect 钩子可用于监听渲染完成。传入空依赖数组 [] 时,回调函数会在组件首次渲染完成后执行。 imp…

react 如何判断数据类型

react 如何判断数据类型

判断数据类型的方法 在React中判断数据类型通常使用JavaScript的原生方法,React本身不提供额外的类型判断工具。以下是常见的几种方法: 使用typeof操作符 typeof适用于判断基…

react如何判断回退路由

react如何判断回退路由

判断回退路由的方法 在React中,可以通过react-router提供的API或自定义逻辑来判断用户是否执行了回退操作(例如点击浏览器的后退按钮)。以下是几种实现方式: 使用useNavigate…

react中如何判断数组长度

react中如何判断数组长度

判断数组长度的基本方法 在React中,可以通过JavaScript原生的length属性直接获取数组的长度。无论数组是存储在组件的state、props还是其他变量中,都可以使用相同的方式判断。…

react如何判断是刷新页面的

react如何判断是刷新页面的

判断页面刷新的方法 在React中,可以通过监听浏览器的beforeunload事件或检查performance.navigation属性来判断页面是否被刷新。以下是几种常见的方法: 使用befor…