找到最大的数字回文 - ArrayIndexOutOfBoundsException?

时间:2014-12-15 13:55:25

标签: java arrays indexoutofboundsexception palindrome

我正试图解决基于回文的问题 但我所得到的只是这个例外 - ArrayIndexOutOfBoundsException

我真的很想弄清楚自己,但我无法理解原因。

以下是代码:

public class LargestPalindrome
{
    public int isPalindrome(int n)
    {
        int revNum=0;
        int num=n,flag=0;
        while(num!=0)
        {
            revNum=revNum*10;
            revNum=revNum + (num%10);
            num=num/10;
        }

        if(n==revNum)
            flag=1;
        else
            flag=0;
        return(flag);
    }

    public static void main(String args[])
    {
        LargestPalindrome p=new LargestPalindrome();
        int flag=0,pro=0;
        int a[]= new int[100];
        int b[]=new int[100];

        for(int i=1;i<=99;i++)
        {
            a[i]=i;
            b[i]=i;
        }

        for(int i=1;i<=99;i++)
        {
            for(int j=1;j<=99;i++)
            {
                pro=a[i]*b[j];

                flag=p.isPalindrome(pro);
                if(flag==1)
                    System.out.println(pro);
                pro=0;
            }
        }

    }
}

有任何建议吗?

1 个答案:

答案 0 :(得分:6)

for(int i=1;i<=99;i++)
    {
        for(int j=1;j<=99;i++)

你应该在第二个语句中增加j。