用Java写从键盘输入一个1~99999之间的数,判断这个数是几位数,并判断这个数是否是回文数。 说明: 回文数---该数所有数字的逆序排列后得到的数和原数相同。 例如:1221,12121,2332
时间: 2024-09-13 10:05:58 浏览: 19
在Java中,你可以使用Scanner类从键盘接收用户输入,然后通过一些条件判断来确定输入的数是几位数以及是否为回文数。下面是一个简单的示例程序:
```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 num = scanner.nextInt(); // 获取用户输入的整数
// 判断位数
int digitCount = String.valueOf(num).length();
System.out.println("该数共有" + digitCount + "位。");
// 判断回文数
boolean isPalindrome = checkPalindrome(num);
if (isPalindrome) {
System.out.println(num + "是回文数。");
} else {
System.out.println(num + "不是回文数。");
}
scanner.close();
}
private static boolean checkPalindrome(int num) {
int reversedNum = 0;
int originalDigit = num;
while (num != 0) {
int remainder = num % 10;
reversedNum = reversedNum * 10 + remainder; // 反转数字
num /= 10; // 移除最后一位
}
return reversedNum == originalDigit; // 比较反转后的数是否与原始数相等
}
}
```
在这个程序里,我们首先获取用户输入的数字,然后计算其位数,接着调用`checkPalindrome`方法来检查它是否为回文数。如果反转后的数字等于原来的数字,那么就是回文数,反之则不是。