编写一个 Java 应用程序。用户从键盘输入一个 1~9999 之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数 和原数相同,例如 12121、3223 都是回文数。
时间: 2024-10-20 18:15:55 浏览: 30
编写一个简单的 Java 程序来满足上述需求,可以按照以下步骤进行:
1. 导入必要的包:
```java
import java.util.Scanner;
```
2. 创建一个主类并添加 main 方法:
```java
public class PalindromeChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个1到9999之间的整数:");
}
}
```
3. 添加获取用户输入的功能并检查位数:
```java
int inputNumber = scanner.nextInt();
int numberOfDigits = String.valueOf(inputNumber).length();
System.out.println("输入的数字有 " + numberOfDigits + " 位。");
```
4. 判断回文数:
```java
boolean isPalindrome = checkIfPalindrome(inputNumber);
if (isPalindrome) {
System.out.println(inputNumber + " 是一个回文数。");
} else {
System.out.println(inputNumber + " 不是一个回文数。");
}
// 定义一个辅助函数来检查回文性
private static boolean checkIfPalindrome(int number) {
int reversed = 0;
int original = number;
while (number != 0) {
int digit = number % 10; // 取出最后一位
reversed = reversed * 10 + digit; // 将新取出的数字放在倒数位置
number /= 10; // 移除已处理的最后一位
}
return reversed == original;
}
```
5. 结束程序:
```java
scanner.close(); // 关闭扫描器
}
```
现在,当你运行此程序并输入一个1到9999之间的数字时,它会告诉你数字的位数以及是否为回文数。
阅读全文