站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题Fibonacci问题大家看看!

Fibonacci问题大家看看!

摘要: Fibonacci问题大家看看!


下面是我编的 能解释出来可就是编译不出来。编译后出如下错误
Exception in thread -#34;main-#34; java.lang.ArrayIndexOutOfBoundsException: -1
at Fibonacci.main(Fibonacci.java:10)
下面是源程序:大家看是什么问题。谢谢了!!!
class Fibonacci
{
public static void main(String args[])
{
int i;
int F[]=new int [10];
F[0]=1;
F[1]=1;
for(i=0;i-#60;10;i++)
F[i]=F[i-1]+F[i-2];
for(i=1;i-#60;=10;i++)
System.out.println(-#34;F[+i+]-#34;+F[i-1]);
}
}





new int [10];

下标是 0..9。



for(i=0;i-#60;10;i++)
F[i]=F[i-1]+F[i-2]; //i=0的时候 i-1=-1 和i-2=-2都是越界的



我刚该了应该是
for(i=2;i-#60;10;i++0)这样按理说该对了把
可还是不出来。


i++0
打错了


class Fibonacci
{
public static void main(String args[])
{
int i;
int F[]=new int [10];
F[0]=1;
F[1]=1;
for(i=2;i-#60;10;i++)
F[i]=F[i-1]+F[i-2];
for(i=1;i-#60;=10;i++)
System.out.println(-#34;F[-#34;+i+-#34;]=-#34;+F[i-1]);
}
}



楼主在第一个循环里面又用了一个循环,但是这两个循环的参数都是i,所以当外面的循环走完第一次的时候i=2,但是里面的循环走完以后i=11,然后再i++就变成12了,这个时候再走外面的循环的时候,F[12]就出错了,ArrayIndexOutOfBoundsException!!


刚才说错了,不过楼主为什么两个基本点内循环和外循环用同一个参数,这样很容易出问题,建议用不同的参数然后再试试看



楼主的代码我运行好象没有问题咯...


↑返回目录
前一篇: (50分)关于timer类的使用,如何在以下API代码中加入定期执行功能?
后一篇: 请教!JAVA帮助文档在那?