📜  Java程序来反转一个数字并检查它是否是回文(1)

📅  最后修改于: 2023-12-03 14:43:03.751000             🧑  作者: Mango

Java程序来反转一个数字并检查它是否是回文

本文将为大家介绍如何使用Java编写程序来反转一个数字并检查它是否是回文。

1. 反转一个数字

要反转一个数字,可以使用以下步骤:

  1. 将数字转换为字符串。
  2. 将字符串转换为字符数组。
  3. 使用for循环将字符数组反转。
  4. 将反转后的字符数组转换回字符串。
  5. 将字符串转换为数字。

以下是代码示例:

public static int reverse(int num) {
    String str = String.valueOf(num); // 将数字转换为字符串
    char[] charArray = str.toCharArray(); // 将字符串转换为字符数组
    int left = 0; // 左指针
    int right = charArray.length - 1; // 右指针
    while (left < right) { // 反转字符数组
        char temp = charArray[left];
        charArray[left] = charArray[right];
        charArray[right] = temp;
        left++;
        right--;
    }
    str = new String(charArray); // 将反转后的字符数组转换回字符串
    return Integer.parseInt(str); // 将字符串转换为数字并返回
}
2. 检查一个数字是否是回文

要检查一个数字是否是回文,可以使用以下步骤:

  1. 将数字反转。
  2. 将反转后的数字和原来的数字比较。

以下是代码示例:

public static boolean isPalindrome(int num) {
    int reverseNum = reverse(num); // 反转数字
    return reverseNum == num; // 返回反转后的数字和原来的数字是否相等
}
3. 完整代码

在此给出完整的Java程序:

public class Palindrome {
    public static int reverse(int num) {
        String str = String.valueOf(num); // 将数字转换为字符串
        char[] charArray = str.toCharArray(); // 将字符串转换为字符数组
        int left = 0; // 左指针
        int right = charArray.length - 1; // 右指针
        while (left < right) { // 反转字符数组
            char temp = charArray[left];
            charArray[left] = charArray[right];
            charArray[right] = temp;
            left++;
            right--;
        }
        str = new String(charArray); // 将反转后的字符数组转换回字符串
        return Integer.parseInt(str); // 将字符串转换为数字并返回
    }

    public static boolean isPalindrome(int num) {
        int reverseNum = reverse(num); // 反转数字
        return reverseNum == num; // 返回反转后的数字和原来的数字是否相等
    }

    public static void main(String[] args) {
        int num = 12321;
        if (isPalindrome(num)) { // 检查数字是否是回文
            System.out.println(num + " is a palindrome.");
        } else {
            System.out.println(num + " is not a palindrome.");
        }
    }
}

使用以上代码,即可判断一个数字是否是回文。