各位来帮我看看,这是什么出了问题?想了老久,还是想不通,请各位帮我看看吧!!

图片说明
这是源代码
图片说明
这是测试的结果,就是不知道哪里错了,请各位帮我看看吧,愁死我了,请各位详细的说说,要是能改正代码,那就更好了
下面是贴的完整代码:package jichusuanfa;

import java.util.Scanner;

public class Ex25 {
//题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个五位数:");
int num = scan.nextInt();
int[] a = new int[5];
int[] b = new int[5];
if(num < 10000 && num >100000 ) {
System.out.println("输入的不是5位数");
System.exit(-1);
} else {
for(int i=4;i>1;i--) {
a[i] = (int)(num/(long)Math.pow(10, i));
}
}

    for(int i=0,j=4;i<5;i++,j--) {
        b[i] = a[j];
    }

    if(a[0] == b[0] && a[1] == b[1]) {
        System.out.println(num + "是回文");
    } else {
        System.out.println(num + "不是回文");
    }







}

}

for(int i=4;i>1;i--) {
a[i] = (int)(num/(long)Math.pow(10, i));
}
这部分应该有问题,a的长度已经不对了,i从4到1也就4位,何况你是大于1,这部分已经不对了

刚学了两天java,
错误在这里:

for(int i=4;i>1;i--) {
a[i] = (int)(num/(long)Math.pow(10, i));

i>1改成i>0就好了

for(int i=4;i>0;i--) {
a[i] = (int)(num/(long)Math.pow(10, i));

这是我在main函数里的代码片段,互相参考一下。
Scanner input=new Scanner(System.in);
System.out.println("请输入回文数:");
int hw=input.nextInt(),HW[]=new int[5],i=0,symbol=0;
while(hw!=0){
HW[i]=hw%10;
hw/=10;
i++;
}
for(int j=0,k=HW.length-1;j<k;j++,k--) {
while (HW[j]!=HW[k]){System.out.println("不是回文数");symbol++;break;}
}
while (symbol==0){System.out.println("是回文数");break;}


public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    System.out.println("请输入一个五位数:");
    int num = scan.nextInt();
    int[] a = new int[5];
    int[] b = new int[5];
    if(num < 10000 && num >100000 ) {
    System.out.println("输入的不是5位数");
    System.exit(-1);
    } else {
    for(int i=4;i>0;i--) {
    a[i] = (int)(num/(long)Math.pow(10, i));
    }
    }
        for(int i=0,j=4;i<5;i++,j--) {
            b[i] = a[j];
        }

        if(a[4] == b[0] && a[3] == b[1]) {              
            System.out.println(num + "是回文");
        } else {

            System.out.println(num + "不是回文");
        }
    }