📅  最后修改于: 2023-12-03 14:43:03.751000             🧑  作者: Mango
本文将为大家介绍如何使用Java编写程序来反转一个数字并检查它是否是回文。
要反转一个数字,可以使用以下步骤:
以下是代码示例:
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; // 返回反转后的数字和原来的数字是否相等
}
在此给出完整的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.");
}
}
}
使用以上代码,即可判断一个数字是否是回文。