在java

时间:2016-05-05 13:55:05

标签: java recursion fibonacci

我正在尝试使用递归生成前十个元素的 Fibonacci系列。但是编译器会给出错误。请帮我找到确切的解决方案。

//程序如下:

public class DemoJava {

    int a=0, b=1, c=0, count=10;

    public void fibonacciRecursion(count) {

        if(count>0){

            c = a+b;
            a = b;
            b = c;
            System.out.println(c);
            fibonacciRecursion(count-1);

        }
    }

    public static void main(String args[]){

        System.out.println("This is a Demo Program.");
        System.out.println(a);
        System.out.println(b);

        DemoJava dj = new DemoJava();
        dj.fibonacciRecursion((count-2));
    }
}

//错误如下:

error: <identifier> expected
        public void fibonacciRecursion(count) {
                                            ^
1 error

2 个答案:

答案 0 :(得分:2)

public void fibonacciRecursion(int count)

您错过了方法签名中的int

其次,

dj.fibonacciRecursion((count-2));

这应该写成:

dj.fibonacciRecursion((dj.count-2));

因为count是一个实例变量。

答案 1 :(得分:2)

嗯...

我很确定你必须在方法参数上指定变量类型,如下所示:

public void fibonacciRecursion(int count) {