编写一个Java 应用程序。用户从键盘输入一个1 - 99999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同例如12121 、3223 都是回文数。
时间: 2024-10-08 18:26:48 浏览: 18
编写一个Java应用程序,首先需要创建一个控制台程序,接收用户的输入并进行处理。以下是简单的步骤:
1. **导入必要的包**:
```java
import java.util.Scanner;
```
2. **主函数**:
```java
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个1到99999之间的整数:");
}
}
```
3. **获取用户输入**:
```java
int number = scanner.nextInt();
```
4. **检查位数**:
```java
int digitCount = String.valueOf(number).length(); // 数字转字符串后长度即为位数
System.out.println("输入的数有 " + digitCount + " 位。");
```
5. **检查回文数**:
```java
String reversed = new StringBuilder(String.valueOf(number)).reverse().toString();
boolean isPalindrome = number == Integer.parseInt(reversed); // 比较原始数与反转后的数
if (isPalindrome) {
System.out.println(number + " 是回文数。");
} else {
System.out.println(number + " 不是回文数。");
}
```
6. **关闭扫描器**:
```java
scanner.close();
```
7. **完整的代码示例**:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个1到99999之间的整数:");
int number = scanner.nextInt();
int digitCount = String.valueOf(number).length();
System.out.println("输入的数有 " + digitCount + " 位。");
String reversed = new StringBuilder(String.valueOf(number)).reverse().toString();
boolean isPalindrome = number == Integer.parseInt(reversed);
if (isPalindrome) {
System.out.println(number + " 是回文数。");
} else {
System.out.println(number + " 不是回文数。");
}
scanner.close();
}
}
```