**每天一道JavaSE基础题(二十五、一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同)**
【程序25】
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
程序代码:
package SE50T;
import java.util.Scanner;
/*
* 【程序25】
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
*/
public class T25 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
int index = s.length();
if (s.length() == 5) {
StringBuilder sb = new StringBuilder();
sb.append(s);
if (sb.charAt(0) == sb.charAt(4) && sb.charAt(1) == sb.charAt(3)) {
System.out.println("这是一个回文数" + s);
}else {
System.out.println("这不是一个回文数。");
}
}else {
System.out.println("请输入一个五位数!!!");
}
// long startime = System.currentTimeMillis();
// text();
// long endtime = System.currentTimeMillis();
// System.out.println("试一下五重for循环所用的时间为:" + (endtime - startime) + "ms");
}
//一开始思路偏了,把五位数以内的回文数给求了。。。
private static void text() {
for (int a = 1; a < 6; a++) {
for (int b = 1; b < 6; b++) {
for (int c = 1; c < 6; c++) {
for (int d = 1; d < 6; d++) {
for (int e = 1; e < 6; e++) {
if (a == e && b==d) {
StringBuilder sb = new StringBuilder();
sb.append(a);
sb.append(b);
sb.append(c);
sb.append(d);
sb.append(e);
String str = sb.toString();
System.out.println(str);
}
}
}
}
}
}
}
}
程序运行图: