java实现回文数算法

判断一个数是否为回文数可以使用以下算法:

  1. 将数字转化为字符串;
  2. 初始化左右两个指针,分别指向字符串的首尾;
  3. 循环比较左右指针指向的字符,如果相等则继续比较,直到左右指针相遇或者发现不相等的字符为止;
  4. 如果左右指针相遇,则说明数字是回文数,返回true;否则,返回false。

以下是一个使用该算法的回文数判断的Java代码示例:

java 复制代码
public class PalindromeNumber {
    public static boolean isPalindrome(int num) {
        String str = String.valueOf(num);
        int left = 0;
        int right = str.length() - 1;
        while (left < right) {
            if (str.charAt(left) != str.charAt(right)) {
                return false;
            }
            left++;
            right--;
        }
        return true;
    }

    public static void main(String[] args) {
        int num = 12321;
        boolean isPalindrome = isPalindrome(num);
        System.out.println(isPalindrome); // 输出 true
    }
}

注意:上述代码假设输入的num是非负整数。如果输入的num是负数,则需要先将其转化为非负整数再进行比较。也可以将负数直接判断为非回文数。

相关推荐
步行cgn2 小时前
@ResponseBody 详解:Spring MVC 中把返回值直接写入响应体
java·spring·mvc
jason成都3 小时前
RTKLIB 的 Java 移植版来了:rtklib-java v3.3.0 功能全景
java·gnss·rtklib·rtklib_java
LazyHunter93 小时前
JDK 28:Java 下一步方向解析与新特性展望
java·jdk
m0_639906943 小时前
Java 重写 Override 与重载 Overload 区别、访问修饰符、static 关键字
java·开发语言
GIS数据转换器3 小时前
基于CIM的城市智慧供热监管服务平台
java·大数据·开发语言·人工智能·后端·物联网·struts
m0_639906944 小时前
SpringBoot自动配置原理
java·spring boot·后端
海鸥-w4 小时前
数据库冗余字段设计笔记
java·数据库·笔记·oracle
工具派5 小时前
PDF签名贴上去为什么发虚?尺寸、DPI与坐标的边界实测
java·python·pdf
萧瑟余晖5 小时前
Spring Data综合实战与调优详解
java·后端·spring