1)编写一个Java 应用程序。用户从键盘输入一个1 - 99999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同例如12121 、3223 都是回文数。
时间: 2024-10-13 14:09:18 浏览: 10
java实验:编写一个java应用程序,用户从键盘输入一个1-99999的数,程序将判断这个数是几位数,并判断这个数是.pdf
在Java中,你可以通过以下几个步骤创建一个简单的命令行应用程序来完成这个任务:
1. 导入必要的包:
```java
import java.util.Scanner;
```
2. 定义主函数`public static void main(String[] args)`作为程序入口。
3. 创建`Scanner`对象,用于获取用户输入:
```java
Scanner input = new Scanner(System.in);
```
4. 使用循环结构接收用户的输入并检查其有效性:
```java
int number;
do {
System.out.println("请输入一个1到99999之间的整数:");
} while (!input.hasNextInt() || input.nextInt() < 1 || input.nextInt() > 99999);
number = input.nextInt();
```
5. 检查数字的位数:
```java
int digitCount = String.valueOf(number).length();
System.out.println("您输入的数字有 " + digitCount + " 位.");
```
6. 判断回文数:
```java
String reversedNumber = new StringBuilder(String.valueOf(number)).reverse().toString();
boolean isPalindrome = number == Integer.parseInt(reversedNumber);
if (isPalindrome) {
System.out.println(number + " 是一个回文数.");
} else {
System.out.println(number + " 不是一个回文数.");
}
```
7. 关闭`Scanner`对象:
```java
input.close();
```
8. 结束程序。
完整的代码示例如下:
```java
import java.util.Scanner;
public class PalindromeChecker {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
do {
System.out.println("请输入一个1到99999之间的整数:");
} while (!input.hasNextInt() || input.nextInt() < 1 || input.nextInt() > 99999);
int number = input.nextInt();
int digitCount = String.valueOf(number).length();
System.out.println("您输入的数字有 " + digitCount + " 位.");
String reversedNumber = new StringBuilder(String.valueOf(number)).reverse().toString();
boolean isPalindrome = number == Integer.parseInt(reversedNumber);
if (isPalindrome) {
System.out.println(number + " 是一个回文数.");
} else {
System.out.println(number + " 不是一个回文数.");
}
input.close();
}
}
```
阅读全文