/**
* java编程题:打印10000以内的回文数字
*/
public class Test {
public static void main(String[] args) {
for(int i=10;i<10000;i++){ //10以内的正整数不是回文数,所以从10开始
if(isCircleNumber(i)){ //判断是否为回文数字
System.out.print(i+" "); //打印回文数字
}
}
}
/**
* 写法一:效率高,直接用int型进行比较
* @param num
* @return
*/
private static boolean isCircleNumber(int num) {
int oldNum = num; //原值
int temp = 0; //反值
while(num > 0){ //循环 num 的每一位数值
temp = temp * 10 + num % 10; //得到一位数字
num /= 10; //num减少一位
}
return temp == oldNum; //判断反值与原值是否相等
}
/**
* 写法二:效率低,通过StringBuilder的reverse()方法反转数字,与原值比较是否相等。
* @param num
* @return
*/
private static boolean isCircleNumber2(int num){
String oldNum = String.valueOf(num); //原值
StringBuilder sb = new StringBuilder(oldNum); //创建StringBuil
java编程题:打印10000以内的回文数字
最新推荐文章于 2024-08-01 11:03:29 发布
该博客主要展示了如何使用Java编程找出并打印10000以内的所有回文数字。回文数字是指从左到右和从右到左读都一样的数字,如11、22、121等。文章通过列举打印出的结果详细展示了实现过程。
摘要由CSDN通过智能技术生成